/*
 * Copyright 2001-2008 The Apache Software Foundation.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * 
 *      http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *
 */
package org.uddi.v3_service;

import java.rmi.Remote;
import java.rmi.RemoteException;
import java.util.List;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebResult;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.ws.Holder;
import javax.xml.ws.RequestWrapper;
import javax.xml.ws.ResponseWrapper;
import org.uddi.api_v3.AddPublisherAssertions;
import org.uddi.api_v3.AssertionStatusItem;
import org.uddi.api_v3.BindingDetail;
import org.uddi.api_v3.BusinessDetail;
import org.uddi.api_v3.CompletionStatus;
import org.uddi.api_v3.DeleteBinding;
import org.uddi.api_v3.DeleteBusiness;
import org.uddi.api_v3.DeletePublisherAssertions;
import org.uddi.api_v3.DeleteService;
import org.uddi.api_v3.DeleteTModel;
import org.uddi.api_v3.GetRegisteredInfo;
import org.uddi.api_v3.PublisherAssertion;
import org.uddi.api_v3.RegisteredInfo;
import org.uddi.api_v3.SaveBinding;
import org.uddi.api_v3.SaveBusiness;
import org.uddi.api_v3.SaveService;
import org.uddi.api_v3.SaveTModel;
import org.uddi.api_v3.ServiceDetail;
import org.uddi.api_v3.TModelDetail;

/**
 * This portType defines all of the UDDI publication operations.
 *
 * This class was generated by the JAX-WS RI. JAX-WS RI 2.1.5-b03- Generated
 * source version: 2.1 <h2 style="margin-left:0in;text-indent:0in"><a
 * name="_Toc527816081">Publication </a>API Set</h2>
 *
 * <p class="MsoBodyText">The API calls in this section are used to publish and
 * update information contained in a UDDI registry.&nbsp; According to the
 * policy of the UDDI registry, a publisher selects a UDDI node where it will
 * publish the information.&nbsp; </p>
 *
 * <p class="MsoBodyText">API calls in this section MUST all be implemented as
 * synchronous and "atomic" from the point of view of the caller. That is, each
 * call MUST either succeed completely or fail completely. Partial results MUST
 * NOT be returned.</p>
 *
 * <h3><a name="_Toc528997551"></a><a name="_Toc525464311"></a><a
 * name="_Ref247612"></a><a name="_Toc85908096"></a><a
 * name="_Toc53709291"></a><a name="_Toc45096377"></a><a
 * name="_Toc45095920"></a><a name="_Toc42047297"></a><a
 * name="_Ref12253009">5.2.1 Publishing entities with node assigned
 * keys</a></h3>
 *
 * <p class="MsoBodyText">When a publisher does not provide keys for new
 * entities, the UDDI node will assign keys in accordance with registry policy.
 * Node-assigned keys MUST use keys that conform to the grammar in Section <a
 * href="#_Ref8978849 ">4.4</a> <i>About uddiKeys</i>.</p>
 *
 * <h3><a name="_Toc85908097"></a><a name="_Toc53709292"></a><a
 * name="_Toc45096378"></a><a name="_Toc45095921"></a><a
 * name="_Toc42047298"></a><a name="_Ref8978630">5.2.2 Publishing entities with
 * publisher-assigned keys</a></h3>
 *
 * <p class="MsoBodyText">The registry keying policy MAY allow an entity’s key
 * to be proposed by the publisher. If the publisher does not propose a key for
 * an entity, the registry MUST assign one. </p>
 *
 * <p class="MsoBodyText">Since entity keys MUST be unique in a registry without
 * regard to the type of entity and since registries MUST define to impose
 * policies concerning which publishers may publish which keys,
 * publisher-assigned keys are subject to rules that UDDI registries enforce.
 * Behavior that ensures uniqueness across entity types (businessEntity,
 * businessService, bindingTemplate, tModel and subscription) is REQUIRED for
 * all registries. In this section we discuss the behavior of registries that
 * use the recommended "uddi:" key structure. This behavior provides uniqueness
 * and promotes interoperability among registries, while allowing various
 * registry-specific policies to be built. Practical guidance for the use of
 * this facility may be found in Section <a
 * href="../../../../../hately/My%20Documents/uddi/v3specification/UDDI%20V3%20Specification.htm#_Ref9007543#_Ref9007543">9.4.2</a>
 * <i>General Keying Policy</i> and Section <a
 * href="../../../../../hately/My%20Documents/uddi/v3specification/UDDI%20V3%20Specification.htm#_Ref9007521#_Ref9007521">9.4.3</a>
 * <i>Policy Abstractions for the UDDI keying scheme</i>.</p>
 *
 * <h4 style="margin-left:0in;text-indent:0in"><a name="_Ref9009437">5.2.2.1 Key
 * generator keys and their partitions</a></h4>
 *
 * <p class="MsoBodyText">To ensure that publisher-generated keys do not
 * conflict with one another, registries assign the authority to generate keys
 * to publishers in the following manner:</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in">1.<span
 * style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>The conceptual space
 * of uddiKeys is divided into non-overlapping, hierarchically arranged
 * partitions, each of which can be associated with a publisher.</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in">2.<span
 * style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Only the publisher
 * associated with a particular partition is given the authority to assign keys
 * within the partition.</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in">3.<span
 * style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>The publisher with
 * authority for a given partition may designate any publisher it chooses for
 * any partition directly below the partition it manages, provided it has not
 * already designated a publisher to that partition.</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in">4.<span
 * style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>The publisher with
 * authority for a partition may transfer its authority to another
 * publisher.</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in">5.<span
 * style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Initially, the
 * registry itself has authority for the root partition of the hierarchy.</p>
 *
 * <p class="MsoBodyText">The specific mechanisms that enforce these rules are
 * explained below.</p>
 *
 * <p class="MsoBodyText">Each node of a registry is a generator of keys.&nbsp;
 * This is required to enable the node to generate keys not provided by
 * publishers. In addition, the policies of a registry MAY allow individual
 * publishers to obtain the authority to be generators of keys for specific
 * partitions within the space of uddiKeys. Publishers obtain this authority by
 * owning a particular tModel called a key generator tModel.&nbsp; The key
 * generator tModel contains a key generator key, and it specifies the partition
 * for which the publisher may assign keys.&nbsp; </p>
 *
 * <p class="MsoBodyText"><span style="layout-grid-mode:line">The subset of
 * derivedKeys called <i>key generator keys</i> consists of all the keys of the
 * form:</span></p>
 *
 * <p class="MsoNormal" style="margin-left:1.0in">keyGeneratorKey
 * &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
 * &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; uddiKey <span
 * style="layout-grid-mode:line">":keygenerator"</span></p>
 *
 * <p class="MsoBodyText">As described in Section 4.4.1, a derivedKey is one
 * that is formed from another key by appending a non-empty, colon-prefixed
 * string to another uddiKey.&nbsp; A derivedKey is said to be "based on" this
 * uddiKey. With this in mind, the complete partition of a given keyGeneratorKey
 * is the set of keys consisting of:</p>
 *
 * <p class="MsoBodyText">&nbsp;</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in">1.<span
 * style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>The set of
 * derivedKeys based on the same uddiKey that the keyGeneratorKey is based
 * upon.</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in">2.<span
 * style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>The set of
 * keyGeneratorKeys based on a key that is in the partition.</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in">3.<span
 * style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>The domainKey, if
 * the keyGeneratorKey is based upon that domainKey.</p>
 *
 * <p class="MsoBodyText">&nbsp;</p>
 *
 * <p class="MsoBodyText">Note that the partition's keyGeneratorKey itself is
 * exluded from the partition.</p>
 *
 * <p class="MsoBodyText">A rootKeyGeneratorKey is a keyGeneratorKey that is not
 * based on a derivedKey. That is:</p>
 *
 * <p class="MsoNormal" style="margin-left:1.0in">rootKeyGeneratorKey
 * &nbsp;&nbsp; = &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (uuidKey /
 * domainKey) ":keygenerator"</p>
 *
 * <p class="MsoNormal" style="margin-left:1.0in">&nbsp;</p>
 *
 * <h5 style="margin-left:0in;text-indent:0in">5.2.2.1.1 Examples</h5>
 *
 * <p class="MsoBodyText">Based on the rules above, it is possible to construct
 * the keyGeneratorKey for any key by manipulating the string representation of
 * the key. To illustrate, suppose the key is x, then the following pseudo-code
 * will determine the keyGeneratoryKey:</p>
 *
 * <p class="codeSample">If x is a keyGeneratorKey, and y is that key minus the
 * ":keygenerator" suffix,</p>
 *
 * <p class="codeSample">then if y is a domainKey</p>
 *
 * <p class="codeSample">&nbsp;&nbsp; then x is a top-level keyGenerator, and
 * has no keyGeneratorKey (1.a)</p>
 *
 * <p class="codeSample">&nbsp;&nbsp; else y is a derivedKey, based on z, </p>
 *
 * <p class="codeSample">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; and x’s
 * keyGeneratorKey is z:keyGenerator (1.b)</p>
 *
 * <p class="codeSample">else</p>
 *
 * <p class="codeSample" style="margin-left:1.0in">If x is a domainKey </p>
 *
 * <p class="codeSample" style="margin-left:1.0in">then x’s keyGeneratorkey is
 * x:keyGenerator (2)<br> else x is based on a key y, and x’s keyGenerator is
 * y:keyGenerator (3)</p>
 *
 * <p class="MsoBodyText">&nbsp;</p>
 *
 * <p class="MsoBodyText">Using this pseudo-code illustration, the following
 * table provides examples of legal URI’s and their associated key generators
 * for each of the four cases noted:</p>
 *
 * <table class="specTable"
 * style="width:452.0pt;margin-left:.5in;border-collapse:collapse;border:none"
 * border="1" cellpadding="0" cellspacing="0" width="603"> <tbody><tr> <td
 * style="width:164.0pt;border:solid black 1.0pt; background:#FFFFCA;padding:0in
 * 5.4pt 0in 5.4pt" valign="top" width="219"> <p
 * class="MsoNormal"><b>Key</b></p> </td> <td style="width:2.25in;border:solid
 * black 1.0pt; border-left:none;background:#FFFFCA;padding:0in 5.4pt 0in 5.4pt"
 * valign="top" width="216"> <p class="MsoNormal"><b>keyGeneratorKey</b></p>
 * </td> <td style="width:1.75in;border:solid black 1.0pt;
 * border-left:none;background:#FFFFCA;padding:0in 5.4pt 0in 5.4pt" valign="top"
 * width="168"> <p class="MsoNormal"><b>Case in pseudo-code</b></p> </td> </tr>
 * <tr> <td style="width:164.0pt;border:solid black 1.0pt;
 * border-top:none;padding:0in 5.4pt 0in 5.4pt" valign="top" width="219"> <p
 * class="MsoNormal">uddi:tempuri.com</p> </td> <td
 * style="width:2.25in;border-top:none;border-left: none;border-bottom:solid
 * black 1.0pt;border-right:solid black 1.0pt; padding:0in 5.4pt 0in 5.4pt"
 * valign="top" width="216"> <p
 * class="MsoNormal">uddi:tempuri.com:keygenerator</p> </td> <td
 * style="width:1.75in;border-top:none;border-left: none;border-bottom:solid
 * black 1.0pt;border-right:solid black 1.0pt; padding:0in 5.4pt 0in 5.4pt"
 * valign="top" width="168"> <p class="MsoNormal">2</p> </td> </tr> <tr> <td
 * style="width:164.0pt;border:solid black 1.0pt; border-top:none;padding:0in
 * 5.4pt 0in 5.4pt" valign="top" width="219"> <p
 * class="MsoNormal">uddi:tempuri.com:keygenerator</p> </td> <td
 * style="width:2.25in;border-top:none;border-left: none;border-bottom:solid
 * black 1.0pt;border-right:solid black 1.0pt; padding:0in 5.4pt 0in 5.4pt"
 * valign="top" width="216"> <p class="MsoNormal">&lt;none&gt;</p> </td> <td
 * style="width:1.75in;border-top:none;border-left: none;border-bottom:solid
 * black 1.0pt;border-right:solid black 1.0pt; padding:0in 5.4pt 0in 5.4pt"
 * valign="top" width="168"> <p class="MsoNormal">1.a</p> </td> </tr> <tr> <td
 * style="width:164.0pt;border:solid black 1.0pt; border-top:none;padding:0in
 * 5.4pt 0in 5.4pt" valign="top" width="219"> <p class="MsoNormal"><span
 * lang="IT">uddi:tempuri.com:xxx:keygenerator</span></p> </td> <td
 * style="width:2.25in;border-top:none;border-left: none;border-bottom:solid
 * black 1.0pt;border-right:solid black 1.0pt; padding:0in 5.4pt 0in 5.4pt"
 * valign="top" width="216"> <p
 * class="MsoNormal">uddi:tempuri.com:keygenerator</p> </td> <td
 * style="width:1.75in;border-top:none;border-left: none;border-bottom:solid
 * black 1.0pt;border-right:solid black 1.0pt; padding:0in 5.4pt 0in 5.4pt"
 * valign="top" width="168"> <p class="MsoNormal">1.b</p> </td> </tr> <tr> <td
 * style="width:164.0pt;border:solid black 1.0pt; border-top:none;padding:0in
 * 5.4pt 0in 5.4pt" valign="top" width="219"> <p
 * class="MsoNormal">uddi:tempuri.com:xxx</p> </td> <td
 * style="width:2.25in;border-top:none;border-left: none;border-bottom:solid
 * black 1.0pt;border-right:solid black 1.0pt; padding:0in 5.4pt 0in 5.4pt"
 * valign="top" width="216"> <p
 * class="MsoNormal">uddi:tempuri.com:keygenerator</p> </td> <td
 * style="width:1.75in;border-top:none;border-left: none;border-bottom:solid
 * black 1.0pt;border-right:solid black 1.0pt; padding:0in 5.4pt 0in 5.4pt"
 * valign="top" width="168"> <p class="MsoNormal">3</p> </td> </tr> <tr> <td
 * style="width:164.0pt;border:solid black 1.0pt; border-top:none;padding:0in
 * 5.4pt 0in 5.4pt" valign="top" width="219"> <p
 * class="MsoNormal">uddi:tempuri.com:xxx:yyy</p> </td> <td
 * style="width:2.25in;border-top:none;border-left: none;border-bottom:solid
 * black 1.0pt;border-right:solid black 1.0pt; padding:0in 5.4pt 0in 5.4pt"
 * valign="top" width="216"> <p class="MsoNormal"><span
 * lang="IT">uddi:tempuri.com:xxx:keygenerator</span></p> </td> <td
 * style="width:1.75in;border-top:none;border-left: none;border-bottom:solid
 * black 1.0pt;border-right:solid black 1.0pt; padding:0in 5.4pt 0in 5.4pt"
 * valign="top" width="168"> <p class="MsoNormal">3</p> </td> </tr>
 * </tbody></table>
 *
 * <p class="MsoBodyText">&nbsp;</p>
 *
 * <p class="MsoBodyText">The following keys do NOT belong to the partition of
 * the key generator key "uddi:tempuri.com:keygenerator".</p>
 *
 * <table class="MsoNormalTable"
 * style="width:405.0pt;margin-left:77.4pt;border-collapse:collapse" border="0"
 * cellpadding="0" cellspacing="0" width="540"> <tbody><tr> <td
 * style="width:171.0pt;padding:0in 5.4pt 0in 5.4pt" valign="top" width="228">
 * <p class="MsoNormal">&nbsp;"uddi:tempuri.com:keygenerator"</p> </td> <td
 * style="width:3.25in;padding:0in 5.4pt 0in 5.4pt" valign="top" width="312"> <p
 * class="MsoNormal">The keyGeneratorKey does not belong to the partition it
 * designates.</p> <p class="MsoNormal">&nbsp;</p> </td> </tr> <tr> <td
 * style="width:171.0pt;padding:0in 5.4pt 0in 5.4pt" valign="top" width="228">
 * <p class="MsoNormal">"uddi:tempuri.com:xxx:yyy"</p> </td> <td
 * style="width:3.25in;padding:0in 5.4pt 0in 5.4pt" valign="top" width="312"> <p
 * class="MsoNormal">This key belongs to the partition of the keyGeneratorKey
 * "uddi:tempuri.com:xxx:keygenerator", not this one.</p> </td> </tr> <tr> <td
 * style="width:171.0pt;padding:0in 5.4pt 0in 5.4pt" valign="top" width="228">
 * <p class="MsoNormal"><span
 * lang="IT">"uddi:tempuri.com:keygenerator:zzz"</span></p> </td> <td
 * style="width:3.25in;padding:0in 5.4pt 0in 5.4pt" valign="top" width="312"> <p
 * class="MsoNormal">This key does not belong in any partition – it is an
 * invalid key.</p> </td> </tr> </tbody></table>
 *
 * <p class="MsoNormal"><a name="_Ref529862482"></a><a
 * name="_Hlt531586136"></a>&nbsp;</p>
 *
 * <h4 style="margin-left:0in;text-indent:0in"><a name="_Ref8978954">5.2.2.2
 * Behavior of publishers</a></h4>
 *
 * <p class="MsoBodyText">To successfully publish a new entity with a proposed
 * key, the publisher needs to own the key generator tModel for the partition in
 * which the key lies. Typically, a publisher gets ownership by publishing the
 * tModel in question, but publishers can also get ownership in other ways, for
 * example by having another publisher transfer ownership.</p>
 *
 * <p class="MsoBodyText">Once a publisher owns a key generator tModel that
 * publisher MAY publish new entities<a href="#_ftn20" name="_ftnref20"
 * title=""><span class="MsoFootnoteReference"><span
 * class="MsoFootnoteReference"><span
 * style="font-size:10.0pt;letter-spacing:-.25pt">[20]</span></span></span></a>
 * and assign them keys within the key generator tModel’s partition. New keys
 * can only be generated from keyGenerator tModels that are not hidden.
 * Publishers are responsible for managing the uniqueness of the keys in the
 * partition they own. If a publisher fails to do so, and generates an already
 * used key, a publish operation could inadvertently replace an entity
 * previously published by that publisher.</p>
 *
 * <p class="MsoBodyText">If a publisher owns key generator tModels with the
 * same key in multiple registries – for example one in the publisher’s private
 * test registry and one in the UDDI Business Registry – that publisher MAY
 * publish the entities with identical keys in those registries. This enables
 * many interesting capabilities. For example, publishers may choose to develop
 * their UDDI entities by publishing them into test registries and then, at
 * appropriate times, "promote" them to the UDDI Business Registry.</p>
 *
 * <h4 style="margin-left:0in;text-indent:0in"><a name="_Ref4335985">5.2.2.3
 * Behavior of UDDI nodes</a></h4>
 *
 * <p class="MsoBodyText">To ensure that publisher-assigned keys work correctly
 * all UDDI implementations behave as follows.</p>
 *
 * <h5 style="margin-left:0in;text-indent:0in">5.2.2.3.1 "New" and "existing"
 * entities defined</h5>
 *
 * <p class="MsoBodyText">During a publish operation, the entity or entities
 * being published are either "new" or "existing". An existing entity is one
 * that has a key that matches the key of an entity already in the registry. A
 * new entity is one that does not. If a new entity has a key, this key is the
 * key proposed for that entity by its publisher.</p>
 *
 * <h5 style="margin-left:0in;text-indent:0in">5.2.2.3.2 Behavior with respect
 * to entities for which no key is proposed.</h5>
 *
 * <p class="MsoBodyText">A UDDI node MUST generate and assign a key to each
 * entity for which the publisher proposes no key. It may generate uuidKeys for
 * use as the keys of new entities for which no key is proposed or it may
 * generate keys in the partition of a key generator tModel it owns. </p>
 *
 * <p class="MsoBodyText">A registry whose nodes assign uddiKeys to new entities
 * is called a root registry. The UDDI Business Registry is a root registry. A
 * registry whose nodes gain ownership of their key generator tModels by
 * publishing them in the UDDI Business Registry are affiliates of the UDDI
 * Business Registry. See Section <a href="#_Ref11678674 ">1.5.5</a>
 * <i>Affiliations of Registries</i>.</p>
 *
 * <h5 style="margin-left:0in;text-indent:0in">5.2.2.3.3 Behavior with respect
 * to uuidKeys</h5>
 *
 * <p class="MsoBodyText">A UDDI node SHOULD accept a uuidKey as the key for a
 * new entity during a publish operation if the publisher is a trusted publisher
 * of such keys, according to the policies of the registry. UDDI nodes MUST NOT
 * allow other publishers to generate uuidKeys.</p>
 *
 * <h5 style="margin-left:0in;text-indent:0in">5.2.2.3.4 Behavior with respect
 * to key generator keys</h5>
 *
 * <p class="MsoBodyText">A UDDI node MUST NOT publish any non-tModel entity
 * whose proposed key is a key generator key.&nbsp; A tModel whose proposed key
 * is a key generator key MUST include a category bag with a keyed reference
 * with the tModelKey set to "uddi:uddi.org:categorization:types" and the
 * keyValue set to "keyGenerator".</p>
 *
 * <h5 style="margin-left:0in;text-indent:0in">5.2.2.3.5 Behavior with respect
 * to root key generator keys</h5>
 *
 * <p class="MsoBodyText">During a publish operation a UDDI node SHOULD accept a
 * root key generator key as the key for a new tModel if it is proposed by a
 * publisher authorized to publish the key, according to the policies of the
 * registry. The policy MUST prevent more than one publisher from publishing
 * tModels with the same root key generator key. </p>
 *
 * <p class="MsoBodyText">An appropriate policy for root and for affiliated
 * registries is given in Chapter <a href="#_Ref8981882 ">9</a>
 * <i>Policy</i>.</p>
 *
 * <h5 style="margin-left:0in;text-indent:0in">5.2.2.3.6 Behavior with respect
 * to other proposed keys</h5>
 *
 * <p class="MsoBodyText">A UDDI node SHOULD accept keys proposed for new
 * entities during publishing operations if they meet both of the following
 * criteria.</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
 * style="font-family:Symbol;layout-grid-mode:line">·<span style="font:7.0pt
 * &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 * </span></span><span style="layout-grid-mode:line">The proposed key lies in
 * the partition of the key of an existing key generator tModel and the key
 * generator tModel is not hidden.</span></p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
 * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 * </span></span>The same publisher who is proposing the new key owns the key
 * generator tModel referred to in the previous bullet.<span
 * class="MsoFootnoteReference"> </span><a href="#_ftn21" name="_ftnref21"
 * title=""><span
 * style="font-size:10.0pt;font-family:Arial;letter-spacing:-.25pt">[21]</span></a></p>
 *
 * <h4 style="margin-left:0in;text-indent:0in">5.2.2.4 Affiliations of
 * registries</h4>
 *
 * <p class="MsoBodyText">A set of registries may cooperate in managing a single
 * multi-registry key space by designating one of the registries in the group to
 * be the "root registry" and assigning it to be the authority for the root
 * partition. Other registries in the set are said to be affiliate
 * registries.&nbsp; See Section <a href="#_Ref11678674 ">1.5.5</a>
 * &nbsp;<i>Affiliations of Registries</i> for more information</p>
 *
 * <p class="MsoBodyText">The UDDI Business Registry is a root registry. Its
 * policies and procedures are designed to make it simple for any UDDI registry
 * to be affiliated with it.</p>
 *
 * <p class="MsoBodyText">Designating new authorities is done by publishing key
 * generator tModels in the root registry, in one or more of the registries
 * affiliated with the root registry or both. The owner of a key generator
 * tModel is the naming authority for the partition the tModel represents. </p>
 *
 * <h3><a name="_Toc85908098"></a><a name="_Toc53709293"></a><a
 * name="_Toc45096379"></a><a name="_Toc45095922"></a><a
 * name="_Toc42047299"></a><a name="_Ref8978999">5.2.3 Special considerations
 * for validated value sets</a></h3>
 *
 * <p class="MsoBodyText">Several of the APIs defined in this section allow
 * publishers to save category and identifier information in support of searches
 * that use category and identifier system references.&nbsp; The save_business,
 * save_service, save_binding and save_tModel APIs allow designation of these
 * value set references.&nbsp; Categorization is specified using the element
 * named categoryBag, which contains namespace-qualified references to
 * categories and descriptions.&nbsp; categoryBags can also contain groups of
 * these references to categories and descriptions.&nbsp; Identifiers are
 * specified using the identifierBag element, which contains namespace-qualified
 * references to identifiers and descriptions.</p>
 *
 * <p class="MsoBodyText">Similarly, the add_publisherAssertions and
 * set_publisherAssertions APIs allow publisherAssertion elements to be
 * saved.&nbsp; These publisherAssertion elements contain a characterization of
 * the relationship being established using a keyedReference element that refers
 * to a relationship type system.</p>
 *
 * <p class="MsoBodyText">Identifier, category and relationship type systems
 * taken together are referred to as "value sets."&nbsp; UDDI allows value sets
 * to be checked or unchecked.&nbsp; References to checked value sets that are
 * registered in UDDI can be checked internally by the UDDI nodes where
 * publishing takes place, or externally by a provider of a validation Web
 * service.&nbsp; The UDDI node can also choose to not support some or all
 * checked value sets.</p>
 *
 * <p class="MsoBodyText">When a UDDI node encounters a reference to a checked
 * value set in a keyedReference it will either ensure the reference is
 * validated or fail the save.&nbsp; Such references to supported checked value
 * sets are verified for validity according to the validation algorithm defined
 * for the value set and described by its tModel.&nbsp; When all checks succeed,
 * the save is permitted.&nbsp; An E_unvalidatable error indicates the checked
 * value set is supported but its validation algorithm is not available.&nbsp;
 * An E_unsupported indicates the checked value set is not supported by the
 * node. &nbsp;E_invalidValue or E_valueNotAllowed indicate one or more
 * references failed validation.&nbsp; When the checked value set is not
 * supported, the value set’s validation algorithm is unavailable, or any of the
 * references fail validation, the save operation MUST fail. </p>
 *
 * <p class="MsoBodyText">When the UDDI node supports a checked value set it may
 * check the references itself, or consult a validation Web service.&nbsp; For
 * cached checked value sets, the UDDI node verifies that referenced keyValues
 * are in the set of valid values for the value set.&nbsp; The selection of an
 * algorithm for verifying a checked value set is a matter of registry policy as
 * detailed in Chapter <a href="#_Ref8980043 ">9</a> <i>Policy</i>.</p>
 *
 * <p class="MsoBodyText">A category group system is portrayed by a
 * keyedRefererenceGroup element.&nbsp; Each keyedReferenceGroup has a tModelKey
 * that references the category group system, and a set of contained
 * keyedReference elements that make up the actual group of categories.&nbsp;
 * Similar to references to checked value sets, validation is carried out for a
 * keyedReferenceGroup if the referenced category group system is checked.&nbsp;
 * Such validation entails verification that the keyedReferenceGroup is valid
 * according to the validation algorithm described by the tModel for the
 * category group system.&nbsp; Validation for a keyedReferenceGroup that
 * references a cached checked category group system involves verification that
 * the tModels referenced by the contained keyedReference elements are valid for
 * the category group system.&nbsp; The set of valid values for such a cacheable
 * checked category group system is defined by the tModelKeys for the set of
 * tModels that can participate in the group.</p>
 *
 * <p class="MsoBodyText">No validation is performed on references to unchecked
 * value sets</p>
 *
 * <h3><a name="_Toc85908099"></a><a name="_Toc53709294"></a><a
 * name="_Toc45096380"></a><a name="_Toc45095923"></a><a
 * name="_Toc42047300"></a><a name="_Ref535223605"></a><a
 * name="_Toc528997553"></a><a name="_Toc525464313"></a><a
 * name="_Hlt536851811"></a>5.2.4 Special considerations for the xml:lang
 * attribute</h3>
 *
 * <p class="MsoBodyText">During save_xx API calls, the name, description,
 * address, and personName UDDI elements MAY be adorned with the xml:lang
 * attribute to indicate the language in which their content is expressed. (See
 * Chapter <a href="#_Ref8981895 ">3</a> <i>UDDI Registry Data
 * Structures</i>.)&nbsp; When an optional xml:lang attribute is omitted from an
 * element, no xml:lang attribute will be saved for that element.</p>
 *
 * <p class="MsoBodyText">Name elements in UDDI core data structures are
 * frequently the main targets for sorts during UDDI inquiries.&nbsp; When a
 * UDDI data structure has multiple names, sorting occurs on the first
 * name.&nbsp; Care should be taken to list the primary name first when the
 * entity is saved to ensure the proper placement of the entity in a sorted
 * result set.</p>
 *
 * <p class="MsoBodyText">Values which can be passed in the language supplied in
 * a save_xx API call MUST obey the recommended rules and syntax governing the
 * xml:lang data type as defined in Section <a href="#_Ref8977786 ">3.3.2.3</a>
 * <i>name</i>.</p>
 *
 * <h3><a name="_Toc528997554"></a><a name="_Toc525464316"></a><a
 * name="_Toc85908100"></a><a name="_Toc53709295"></a><a
 * name="_Toc45096381"></a><a name="_Toc45095924"></a><a
 * name="_Toc42047301">5.2.5 Publisher </a>API summary</h3>
 *
 * <p class="MsoBodyText">The publishing API calls are:</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
 * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 * </span></span><a href="#_add_publisherAssertions"><b><span
 * style="color:windowtext;
 * text-decoration:none">add_publisherAssertions</span></b></a>: Used to add
 * relationship assertions to the existing set of assertions.&nbsp; See Appendix
 * A <i>Relationships and Publisher Assertions</i>.</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
 * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 * </span></span><a href="#_delete_binding"><b><span style="color:windowtext;
 * text-decoration:none">delete_binding</span></b></a>: Used to remove an
 * existing bindingTemplate from the registry.</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
 * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 * </span></span><a href="#_save_business"><b><span style="color:windowtext;
 * text-decoration:none">delete_business</span></b></a>: Used to delete existing
 * businessEntity information from the registry.</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
 * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 * </span></span><a href="#_delete_publisherAssertions"><b><span style="color:
 * windowtext;text-decoration:none">delete_publisherAssertions</span></b></a>:
 * Used to delete specific publisher assertions from the assertion collection
 * controlled by a particular publisher.&nbsp; Deleting assertions from the
 * assertion collection affects the visibility of business relationships.&nbsp;
 * Deleting an assertion causes any relationships based on that assertion to
 * become incomplete.</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
 * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 * </span></span><a href="#_delete_service"><b><span style="color:windowtext;
 * text-decoration:none">delete_service</span></b></a>: Used to delete an
 * existing businessService from the registry.</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
 * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 * </span></span><a href="#_delete_tModel"><b><span style="color:windowtext;
 * text-decoration:none">delete_tModel</span></b></a>: Used to hide existing
 * information about a tModel.&nbsp; Any tModel hidden in this way is still
 * usable for reference purposes and accessible via the get_tModelDetail API,
 * but is hidden from find_tModel result sets.&nbsp; There is no specified way
 * to delete a tModel.</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
 * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 * </span></span><a href="#_get_assertionStatusReport"><b><span
 * style="color:windowtext;
 * text-decoration:none">get_assertionStatusReport</span></b></a>: Used to get a
 * status report containing publisher assertions and status information.&nbsp;
 * This report is useful to help an administrator manage publisher assertions.
 * Returns an assertionStatusReport that includes the status of all assertions
 * made involving any businessEntity controlled by the requesting publisher.</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
 * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 * </span></span><a href="#_get_publisherAssertions"><b><span
 * style="color:windowtext;
 * text-decoration:none">get_publisherAssertions</span></b></a>: Used to get a
 * list of publisher assertions that are controlled by an individual
 * publisher.&nbsp; Returns a publisherAssertions structure containing all
 * publisher assertions associated with a specific publisher.</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
 * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 * </span></span><a href="#_get_registeredInfo"><b><span
 * style="color:windowtext;
 * text-decoration:none">get_registeredInfo</span></b></a>: Used to request an
 * abbreviated list of businesses and tModels currently managed by a given
 * publisher.</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
 * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 * </span></span><a href="#_save_binding"><b><span style="color:windowtext;
 * text-decoration:none">save_binding</span></b></a>: Used to register new
 * bindingTemplate information or to update existing bindingTemplate
 * information.&nbsp; Use this to control information about technical
 * capabilities exposed by a registered business.</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
 * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 * </span></span><a href="#_save_business"><b><span style="color:windowtext;
 * text-decoration:none">save_business</span></b></a>: Used to register new
 * businessEntity information or update existing businessEntity
 * information.&nbsp; Use this to control the full set of information about the
 * entire business, including its businessService and bindingTemplate
 * structures.&nbsp; This API has the broadest effect of all of the save_xx
 * APIs.</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
 * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 * </span></span><a href="#_save_service"><b><span style="color:windowtext;
 * text-decoration:none">save_service</span></b></a>:&nbsp; Used to register or
 * update complete information about a businessService.</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
 * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 * </span></span><a href="#_save_tModel"><b><span style="color:windowtext;
 * text-decoration:none">save_tModel</span></b></a>:&nbsp; Used to register or
 * update information about a tModel.</p>
 *
 * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
 * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
 * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 * </span></span><a href="#_set_publisherAssertions"><b><span
 * style="color:windowtext;
 * text-decoration:none">set_publisherAssertions</span></b></a>: Used to save
 * the complete set of publisher assertions for an individual publisher.&nbsp;
 * Replaces any existing assertions, and causes any old assertions that are not
 * reasserted to be removed from the registry.</p>
 *
 */
@WebService(name = "UDDI_Publication_PortType", targetNamespace = "urn:uddi-org:api_v3_portType")
@XmlSeeAlso({
    org.uddi.custody_v3.ObjectFactory.class,
    org.uddi.repl_v3.ObjectFactory.class,
    org.uddi.subr_v3.ObjectFactory.class,
    org.uddi.api_v3.ObjectFactory.class,
    org.uddi.vscache_v3.ObjectFactory.class,
    org.uddi.vs_v3.ObjectFactory.class,
    org.uddi.sub_v3.ObjectFactory.class,
    org.w3._2000._09.xmldsig_.ObjectFactory.class,
    org.uddi.policy_v3.ObjectFactory.class,
    org.uddi.policy_v3_instanceparms.ObjectFactory.class
})
public interface UDDIPublicationPortType extends Remote {

    /**
     * The add_publisherAssertions API call causes one or more
     * publisherAssertions to be added to an individual publisher’s assertion
     * collection. See Appendix A Relationships and Publisher Assertions
     * describing relationships and the API get_publisherAssertions for more
     * information on this collection. <p class="MsoBodyText">The publisher must
     * own the businessEntity referenced in the fromKey, the toKey, or
     * both.&nbsp; If both of the businessKey values passed within an assertion
     * are owned by the publisher, then the assertion is automatically complete
     * and the relationship described in the assertion is visible via the
     * find_relatedBusinesses API.&nbsp; To form a relationship when the
     * publisher only owns one of the two keys passed, the assertion MUST be
     * matched exactly by an assertion made by the publisher who owns the other
     * business referenced. Assertions exactly match if and only if they: </p>
     *
     * <p class="MsoBodyText"
     * style="margin-left:1.0in;text-indent:-.25in">1.<span style="font:7.0pt
     * &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span>refer to the same businessEntity in their fromKeys; </p>
     *
     * <p class="MsoBodyText"
     * style="margin-left:1.0in;text-indent:-.25in">2.<span style="font:7.0pt
     * &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span>refer to the same businessEntity in their toKeys; </p>
     *
     * <p class="MsoBodyText"
     * style="margin-left:1.0in;text-indent:-.25in">3.<span style="font:7.0pt
     * &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span>refer to the same tModel in their tModelKeys; </p>
     *
     * <p class="MsoBodyText"
     * style="margin-left:1.0in;text-indent:-.25in">4.<span style="font:7.0pt
     * &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span>have identical keyNames; and </p>
     *
     * <p class="MsoBodyText"
     * style="margin-left:1.0in;text-indent:-.25in">5.<span style="font:7.0pt
     * &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span>have identical keyValues.</p>
     *
     * <p class="MsoBodyText">When a publisherAssertion being added references a
     * checked relationship system using the tModelKey in the contained
     * keyedReference, the reference MUST be checked for validity prior to
     * completion of the add, or the node must return E_unsupported, indicating
     * it does not support the referenced checked relationship system.&nbsp;
     * Validation of a relationship system reference entails verification that
     * the reference is valid according to the validation algorithm defined for
     * the relationship system and described by its tModel.&nbsp; For cached
     * checked relationship systems, the validation algorithm verifies that
     * referenced keyValues are in the set of valid values for the relationship
     * system.</p>
     *
     * <p class="MsoBodyText">For registries supporting the subscription APIs at
     * any node, it is necessary to track a modified date for publisherAssertion
     * elements so that nodes have the necessary information for responding to
     * subscription requests involving find_relatedBusinesses and
     * get_assertionStatusReport filters.</p>
     *
     * @param body <p class="MsoBodyText"
     * style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><i>authInfo</i></b>: This optional argument is an
     * element that contains an authentication token.&nbsp; Authentication
     * tokens are obtained using the get_authToken API call or through some
     * other method external to this specification. Registries that serve
     * multiple publishers and registries that restrict who can publish in them
     * typically require authInfo for this call.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><i>publisherAssertion</i></b>: This required repeating
     * element holds the relationship assertions that are being added.&nbsp;
     * Relationship assertions consist of a reference to two businessEntity key
     * values as designated by the fromKey and toKey elements, as well as a
     * REQUIRED expression of directional relationship within the contained
     * keyedReference element.&nbsp; See Appendix A <i>Relationships and
     * PublisherAssertions</i> on managing relationships. The fromKey, the
     * toKey, and all three parts of the keyedReference – the tModelKey, the
     * keyName, and the keyValue MUST be specified or the call will fail with
     * the error E_fatalError. Empty (zero length) keyNames and keyValues are
     * permitted.</p> Upon successful completion, an empty message is returned.
     * See section 4.8 Success and Error Reporting.
     * @throws DispositionReportFaultMessage, RemoteException
     *
     * <p class="MsoBodyText">If an error occurs in processing this API call, a
     * dispositionReport structure MUST be returned to the caller in a SOAP
     * Fault. See Section <a href="#_Ref8978558 ">4.8</a> <i>Success and Error
     * Reporting.&nbsp; </i>In addition to the errors common to all APIs, the
     * following error information is relevant here:</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_invalidKeyPassed</b>: signifies that one of the
     * <i>uddiKey</i> values passed did not match with any known businessKey or
     * tModelKey values.&nbsp; The key and element or attribute that caused the
     * problem SHOULD be clearly indicated in the error text.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_userMismatch</b>: signifies that neither of the
     * businessKey values passed in the embedded fromKey and toKey elements is
     * owned by the publisher associated with the authentication token.&nbsp;
     * The error text SHOULD clearly indicate which assertion caused the
     * error.</p>
     */
    @WebMethod(operationName = "add_publisherAssertions", action = "add_publisherAssertions")
    @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
    public void addPublisherAssertions(
            @WebParam(name = "add_publisherAssertions", targetNamespace = "urn:uddi-org:api_v3", partName = "body") AddPublisherAssertions body)
            throws DispositionReportFaultMessage, RemoteException;

    /**
     * The delete_binding API call causes one or more instances of
     * bindingTemplate data to be deleted from the UDDI registry.
     *
     * @param body <p class="MsoBodyText"
     * style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><i>authInfo</i></b>: This optional argument is an
     * element that contains an authentication token.&nbsp; Authentication
     * tokens are obtained using the get_authToken API call or through some
     * other method external to this specification. Registries that serve
     * multiple publishers and registries that restrict who can publish in them
     * typically require authInfo for this call.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><i>bindingKey</i></b>: One or more required
     * <i>uddiKey</i> values that represent specific instances of known
     * bindingTemplate data.</p>
     *     
* Upon successful completion, an empty message is returned. See section 4.8
     * Success and Error Reporting.
     * @throws DispositionReportFaultMessage, RemoteException <p
     * class="MsoBodyText">If an error occurs in processing this API call, a
     * dispositionReport structure MUST be returned to the caller in a SOAP
     * Fault.&nbsp; See Section <a href="#_Ref8978558 ">4.8</a> <i>Success and
     * Error Reporting.&nbsp; </i>In addition to the errors common to all APIs,
     * the following error information is relevant here:</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_invalidKeyPassed</b>: Signifies that one of the
     * <i>uddiKey</i> values passed did not match with any known bindingKey
     * values or multiple instances of the same bindingKey values were
     * passed.&nbsp; No partial results are returned – if any bindingKey values
     * passed are not valid, this error is returned.&nbsp; The key that caused
     * the problem SHOULD clearly be indicated in the error text.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_userMismatch</b>: Signifies that one or more of the
     * bindingKey values passed refers to a bindingTemplate that is not owned by
     * the individual publisher associated with the authentication token.</p>
     *
     * <b><span
     * style="font-size:13.0pt;font-family:Arial;color:navy"></span></b>
     */
    @WebMethod(operationName = "delete_binding", action = "delete_binding")
    @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
    public void deleteBinding(
            @WebParam(name = "delete_binding", targetNamespace = "urn:uddi-org:api_v3", partName = "body") DeleteBinding body)
            throws DispositionReportFaultMessage, RemoteException;

    /**
     * The delete_business API call is used to remove one or more business
     * registrations and all elements that correspond to the natural content of
     * the corresponding businessEntity elements from a UDDI registry.
     *
     * @param body · authInfo: This optional argument is an element that
     * contains an authentication token. Authentication tokens are obtained
     * using the get_authToken API call or through some other means external to
     * this specification. Registries that serve multiple publishers and
     * registries that restrict who can publish in them typically require
     * authInfo for this call.
     *
     * · businessKey: One or more required uddiKey values that represent
     * specific instances of known businessEntity data. <p
     * class="MsoBodyText">The UDDI registry MUST permanently remove all of the
     * <i>natural contents</i><a href="#_ftn22" name="_ftnref22" title=""><span
     * class="MsoFootnoteReference"><span class="MsoFootnoteReference"><span
     * style="font-size:10.0pt;letter-spacing:-.25pt">[22]</span></span></span></a>
     * of the passed businessEntity elements, including any currently nested
     * businessService and bindingTemplate data, from the UDDI registry.</p>
     *
     * <p class="MsoBodyText">If there are service projections<a href="#_ftn23"
     * name="_ftnref23" title=""><span class="MsoFootnoteReference"><span
     * class="MsoFootnoteReference"><span
     * style="font-size:10.0pt;letter-spacing:-.25pt">[23]</span></span></span></a>
     * that reference businessService elements deleted in this way, they are
     * left untouched. Such "broken" service projections appear in their
     * businessEntity as businessService elements containing the businessKey and
     * serviceKey attributes as their only content. For this reason, it is a
     * best practice to coordinate references to businessService data published
     * under another businessEntity with the party who manages that data.&nbsp;
     * </p>
     *
     * <p class="MsoBodyText">All publisher assertions that reference the
     * businessKey of the businessEntity being deleted in either the fromKey or
     * toKey of the publisherAssertion MUST be automatically deleted.&nbsp; A
     * deleted business MUST not be returned in the find_relatedBusinesses
     * API.</p>
     *
     * <p class="MsoBodyText">Any transferToken referring to the business entity
     * being deleted becomes invalid and can no longer be used to transfer any
     * entities.</p> Upon successful completion, an empty message is returned.
     * See section 4.8 Success and Error Reporting.
     * @throws DispositionReportFaultMessage, RemoteException <p
     * class="MsoBodyText">If an error occurs in processing this API call, a
     * dispositionReport element MUST be returned to the caller within a SOAP
     * Fault.&nbsp; See Section <a href="#_Ref8978558 ">4.8</a> <i>Success and
     * Error Reporting.&nbsp; </i>In addition to the errors common to all APIs,
     * the following error information is relevant here:</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_invalidKeyPassed</b>: Signifies that one of the
     * <i>uddiKey</i> values passed did not match with any known businessKey
     * values or multiple instances of the same businessKey values were passed.
     * The key that caused the error SHOULD be clearly indicated in the error
     * text.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_userMismatch</b>: Signifies that one or more of the
     * businessKey values passed refers to data that is not owned by the
     * individual publisher who is represented by the authentication token.</p>
     *
     * <p class="MsoNormal">&nbsp;</p>
     */
    @WebMethod(operationName = "delete_business", action = "delete_business")
    @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
    public void deleteBusiness(
            @WebParam(name = "delete_business", targetNamespace = "urn:uddi-org:api_v3", partName = "body") DeleteBusiness body)
            throws DispositionReportFaultMessage, RemoteException;

    /**
     * The delete_publisherAssertions API call causes one or more
     * publisherAssertion elements to be removed from a publisher’s assertion
     * collection. See Appendix A Relationships and Publisher Assertions and the
     * API get_publisherAssertions for more information on this collection.
     *
     * @param body <p class="MsoBodyText"
     * style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><i>authInfo</i></b>: This optional argument is an
     * element that contains an authentication token.&nbsp; Authentication
     * tokens are obtained using the get_authToken API call or through some
     * other means external to this specification. Registries that serve
     * multiple publishers and registries that restrict who can publish in them
     * typically require authInfo for this call.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><i>publisherAssertion</i></b>: One or more required
     * publisher assertion structures exactly matching an existing assertion in
     * the publisher’s assertion collection.</p> <p class="MsoBodyText">The UDDI
     * registry scans the assertion collection associated with the publisher,
     * and removes any assertions that exactly match all parts of each
     * publisherAssertion passed.&nbsp; Any assertions described that cannot be
     * located result in an error.&nbsp; The removal of assertions in this API
     * causes the corresponding relationships to no longer be visible via the
     * find_relatedBusinesses API.</p>
     *
     * <p class="MsoBodyText">For registries supporting the subscription APIs at
     * any node, it is necessary to track a modified date for publisherAssertion
     * elements so that nodes have the necessary information for responding to
     * subscription requests involving find_relatedBusinesses and
     * get_assertionStatusReport filters.</p> Upon successful completion, an
     * empty message is returned. See section 4.8 Success and Error Reporting.
     * @throws DispositionReportFaultMessage, RemoteException <p
     * class="MsoBodyText">If an error occurs in processing this API call, a
     * dispositionReport structure MUST be returned to the caller in a SOAP
     * Fault.&nbsp; See Section <a href="#_Ref8978558 ">4.8</a> <i>Success and
     * Error Reporting.&nbsp; </i>In addition to the errors common to all APIs,
     * the following error information is relevant here:</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_assertionNotFound</b>: Signifies that one of the
     * assertion structures passed does not have any corresponding match in the
     * publisher’s assertion collection or multiple instances of the same
     * publisherAssertions elements were passed.&nbsp; The assertion that caused
     * the problem SHOULD be clearly indicated in the error text. </p>
     *
     * <b><span
     * style="font-size:13.0pt;font-family:Arial;color:navy"></span></b>
     */
    @WebMethod(operationName = "delete_publisherAssertions", action = "delete_publisherAssertions")
    @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
    public void deletePublisherAssertions(
            @WebParam(name = "delete_publisherAssertions", targetNamespace = "urn:uddi-org:api_v3", partName = "body") DeletePublisherAssertions body)
            throws DispositionReportFaultMessage, RemoteException;

    /**
     * The delete_service API call is used to remove one or more businessService
     * elements from the UDDI registry and from its containing businessEntity
     * parent.
     *
     * @param body <p class="MsoBodyText"
     * style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><i>authInfo</i></b>: This optional argument is an
     * element that contains an authentication token.&nbsp; Authentication
     * tokens are obtained using the get_authToken API call or through some
     * other means external to this specification. Registries that serve
     * multiple publishers and registries that restrict who can publish in them
     * typically require authInfo for this call.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><i>serviceKey</i></b>: One or more required
     * <i>uddiKey</i> values that represent specific instances of known
     * businessService data.</p> <p class="MsoBodyText">All contained
     * bindingTemplate data MUST also be removed from the registry as a result
     * of this call.</p>
     *
     * <p class="MsoBodyText">If a business service being deleted is the target
     * of a business service projection associated with another businessEntity,
     * the referencing businessService elements are left untouched.&nbsp; Such
     * "broken" service projections appear in their businessEntity and
     * businessService elements containing the businessKey and serviceKey
     * attributes as their only content.&nbsp; For this reason, it is
     * recommended that references to businessService data published under
     * another businessEntity be coordinated with the party that manages that
     * data.&nbsp; </p>
     * @throws DispositionReportFaultMessage, RemoteException If an error occurs
     * in processing this API call, a dispositionReport structure MUST be
     * returned to the caller in a SOAP Fault. See Section 4.8 Success and Error
     * Reporting. In addition to the errors common to all APIs, the following
     * error information is relevant here:
     *
     * · E_invalidKeyPassed: Signifies that one of the uddiKey values passed did
     * not match with any known serviceKey values or multiple instances of the
     * same serviceKey values were passed. The key causing the error SHOULD be
     * clearly indicated in the error text.
     *
     * · E_userMismatch: Signifies that one or more of the serviceKey values
     * passed refers to data that is not owned by the individual publisher who
     * is represented by the authentication token.
     */
    @WebMethod(operationName = "delete_service", action = "delete_service")
    @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
    public void deleteService(
            @WebParam(name = "delete_service", targetNamespace = "urn:uddi-org:api_v3", partName = "body") DeleteService body)
            throws DispositionReportFaultMessage, RemoteException;

    /**
     * The delete_tModel API call is used to logically delete one or more tModel
     * structures. Logical deletion hides the deleted tModels from find_tModel
     * result sets but does not physically delete them. New references to
     * deleted (hidden) tModels can be established by publishers that know their
     * keys. Deleting an already deleted tModel has no effect.
     *
     * @param body <p class="MsoBodyText"
     * style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><i>authInfo</i></b>: This optional argument is an
     * element that contains an authentication token.&nbsp; Authentication
     * tokens are obtained using the get_authToken API call or through some
     * other means external to this specification. Registries that serve
     * multiple publishers and registries that restrict who can publish in them
     * typically require authInfo for this call.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><i>tModelKey</i></b>: One or more required
     * <i>uddiKey</i> values that represent specific instances of known tModel
     * data.</p> <p class="MsoBodyText">If a tModel is hidden in this way it
     * MUST not be physically deleted as a result of this call. Any tModels
     * hidden in this way are still accessible, via the get_registeredInfo and
     * get_tModelDetail APIs, but are omitted from any results returned by calls
     * to find_tModel.&nbsp; All other inquiry APIs may include references to
     * tModelKeys of deleted tModelKeys, and UDDI data structures that reference
     * these tModels are found and retrieved. </p>
     *
     * <p class="MsoBodyText">The purpose of the delete_tModel behavior is to
     * ensure that the details associated with a hidden tModel are still
     * available to anyone currently using the tModel.&nbsp; A hidden tModel can
     * be restored and made visible to search results by invoking the
     * save_tModel API at a later time, passing the original data and the
     * tModelKey value of the hidden tModel.</p>
     *
     * <p class="MsoBodyText">It is not an error to transfer a hidden tModel
     * (i.e. deleted attribute set to TRUE).</p> Upon successful completion, an
     * empty message is returned. See section 4.8 Success and Error Reporting.
     * @throws DispositionReportFaultMessage, RemoteException If an error occurs
     * in processing this API call, a dispositionReport element MUST be returned
     * to the caller within a SOAP Fault. See Section 4.8 Success and Error
     * Reporting. In addition to the errors common to all APIs, the following
     * error information is relevant here:
     *
     * · E_invalidKeyPassed: Signifies that one of the uddiKey values passed did
     * not match with any known tModelKey values or multiple instances of the
     * same tModelKey values were passed. The invalid key references SHOULD be
     * clearly indicated in the error text.
     *
     * · E_userMismatch: Signifies that one or more of the tModelKey values
     * passed refers to data that is not owned by the individual publisher who
     * is represented by the authentication token.
     */
    @WebMethod(operationName = "delete_tModel", action = "delete_tModel")
    @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
    public void deleteTModel(
            @WebParam(name = "delete_tModel", targetNamespace = "urn:uddi-org:api_v3", partName = "body") DeleteTModel body)
            throws DispositionReportFaultMessage, RemoteException;

    /**
     * The get_assertionStatusReport API call provides administrative support
     * for determining the status of current and outstanding publisher
     * assertions that involve any of the business registrations managed by the
     * individual publisher. Using this API, a publisher can see the status of
     * assertions that they have made, as well as see assertions that others
     * have made that involve businessEntity structures controlled by the
     * requesting publisher. See Appendix A Relationships and Publisher
     * Assertions for more information.
     *
     * @param completionStatus
     * @param authInfo <p class="MsoBodyText"
     * style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><i>authInfo</i></b>: This optional argument is an
     * element that contains an authentication token.&nbsp; Authentication
     * tokens are obtained using the get_authToken API call or through some
     * other means external to this specification. Registries that serve
     * multiple publishers and registries that restrict who can publish in them
     * typically require authInfo for this call.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><i>completionStatus</i></b>: This optional argument lets
     * the publisher restrict the result set to only those relationships that
     * have the specified status value.&nbsp; Assertion status is a calculated
     * result based on the sum total of assertions made by the individuals that
     * control specific business registrations.&nbsp; When no completionStatus
     * element is provided, all assertions involving the businesses that the
     * publisher owns are retrieved, without regard to the completeness of the
     * relationship.&nbsp; completionStatus MUST contain one of the following
     * values</p>
     *
     * <p class="MsoNormal" style="margin-left:1.5in;text-indent:-.25in"><span
     * style="font-family:&quot;Courier New&quot;">o<span style="font:7.0pt
     * &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>status:complete</b>: Passing this value causes only the
     * publisher assertions that are complete to be returned.&nbsp; Each
     * businessEntity listed in assertions that are complete has a visible
     * relationship that directly reflects the data in a complete assertion (as
     * described in the find_relatedBusinesses API).</p>
     *
     * <p class="MsoNormal" style="margin-left:1.5in;text-indent:-.25in"><span
     * style="font-family:&quot;Courier New&quot;">o<span style="font:7.0pt
     * &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>status:toKey_incomplete</b>: Passing this value causes
     * only those publisher assertions where the party who controls the
     * businessEntity referenced by the toKey value in an assertion, has not
     * made a matching assertion, to be listed.</p>
     *
     * <p class="MsoNormal" style="margin-left:1.5in;text-indent:-.25in"><span
     * style="font-family:&quot;Courier New&quot;">o<span style="font:7.0pt
     * &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>status:fromKey_incomplete</b>: Passing this value causes
     * only those publisher assertions where the party who controls the
     * businessEntity referenced by the fromKey value in an assertion, has not
     * made a matching assertion, to be listed.</p>
     *
     * <p class="MsoNormal" style="margin-left:1.5in;text-indent:-.25in"><span
     * style="font-family:&quot;Courier New&quot;">o<span style="font:7.0pt
     * &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>status:both_incomplete</b>. This status value, however,
     * is only applicable to the context of UDDI subscription and SHOULD not be
     * present as part of a response to a get_assertionStatusReport request.</p>
     *
     * <span
     * style="font-size:10.0pt;font-family:Arial;letter-spacing:-.25pt"></span>
     * @return returns java.util.List<org.uddi.api_v3.AssertionStatusItem> Upon
     * successful completion, an assertionStatusReport structure is returned
     * containing zero or more assertionStatusItem structures. Elements will be
     * sorted by last date change in ascending order.
     *
     * The assertionStatusReport has the form: <img
     * src="http://uddi.org/pubs/uddi-v3.0.2-20041019_files/image067.gif"> <p
     * class="MsoBodyText">The assertionStatusReport reports all complete and
     * incomplete assertions and serves an administrative use for determining if
     * there are any outstanding, incomplete assertions pertaining to
     * relationships involving businesses with which the publisher is
     * associated.</p>
     *
     * <p class="MsoBodyText">Since the publisher who was authenticated by the
     * get_assertionStatusReport API may own several businesses, the
     * assertionStatusReport structure shows the assertions made for all
     * businesses owned by the publisher.</p>
     *
     * <p class="MsoBodyText">The assertion status report is composed of a set
     * of assertionStatusItem elements that describe the assertions in which the
     * publisher’s businesses participate.&nbsp; The assertionStatusItem element
     * has the form:</p>
     *
     * <p class="MsoBodyText"><img
     * src="http://uddi.org/pubs/uddi-v3.0.2-20041019_files/image068.gif"
     * border="0" height="170" width="393"></p>
     *
     * <p class="MsoBodyText">&nbsp;</p>
     *
     * <p class="MsoBodyText">The assertionStatusItem structure has the
     * following attribute:</p>
     *
     * <table class="MsoNormalTable"
     * style="margin-left:48.75pt;border-collapse:collapse;border:none"
     * border="1" cellpadding="0" cellspacing="0"> <tbody><tr> <td
     * style="border:solid black 1.0pt;background:#FFFFCA;padding: 0in 5.4pt 0in
     * 5.4pt" valign="top"> <p class="MsoNormal"><b>Name&nbsp; </b></p> </td>
     * <td style="border:solid black 1.0pt;border-left:none;background:
     * #FFFFCA;padding:0in 5.4pt 0in 5.4pt" valign="top"> <p
     * class="MsoNormal"><b>Use&nbsp; </b></p> </td> </tr> <tr> <td
     * style="border:solid black 1.0pt;border-top:none;padding:0in 5.4pt 0in
     * 5.4pt" valign="top"> <p class="MsoNormal">completionStatus&nbsp; </p>
     * </td> <td style="border-top:none;border-left:none;border-bottom:solid
     * black 1.0pt; border-right:solid black 1.0pt;padding:0in 5.4pt 0in 5.4pt"
     * valign="top"> <p class="MsoNormal">required</p> </td> </tr>
     * </tbody></table>
     *
     * <p class="MsoNormal">&nbsp;</p>
     *
     * <p class="MsoBodyText">While the elements fromKey, toKey and
     * keyedReference together identify the assertion on whose status a report
     * is being provided, the keysOwned element designates those businessKeys
     * the publisher manages.&nbsp; The keysOwned element has the form:</p>
     *
     * <p class="MsoBodyText"><img
     * src="http://uddi.org/pubs/uddi-v3.0.2-20041019_files/image069.gif"
     * border="0" height="137" width="372"></p>
     *
     * <p class="MsoBodyText">An assertion is part of a reciprocal relationship
     * only if the completionStatus attribute has a value "status:complete". If
     * completionStatus has a value "status:toKey_incomplete" or
     * "status:fromKey_incomplete", the party who controls the businessEntity
     * referenced by the toKey or the fromKey has not yet made a matching
     * assertion.</p>
     * @throws DispositionReportFaultMessage, RemoteException If an error occurs
     * in processing this API call, a dispositionReport element MUST be returned
     * to the caller within a SOAP Fault. See Section 4.8 Success and Error
     * Reporting. In addition to the errors common to all APIs, the following
     * error information is relevant here:
     *
     * · E_invalidCompletionStatus: Signifies that the completionStatus value
     * passed is unrecognized. The completion status that caused the problem
     * SHOULD be clearly indicated in the error text.
     *
     *
     */
    @WebMethod(operationName = "get_assertionStatusReport", action = "get_assertionStatusReport")
    @WebResult(name = "assertionStatusItem", targetNamespace = "urn:uddi-org:api_v3")
    @RequestWrapper(localName = "get_assertionStatusReport", targetNamespace = "urn:uddi-org:api_v3", className = "org.uddi.api_v3.GetAssertionStatusReport")
    @ResponseWrapper(localName = "assertionStatusReport", targetNamespace = "urn:uddi-org:api_v3", className = "org.uddi.api_v3.AssertionStatusReport")
    public List<AssertionStatusItem> getAssertionStatusReport(
            @WebParam(name = "authInfo", targetNamespace = "urn:uddi-org:api_v3") String authInfo,
            @WebParam(name = "completionStatus", targetNamespace = "urn:uddi-org:api_v3") CompletionStatus completionStatus)
            throws DispositionReportFaultMessage, RemoteException;

    /**
     * The get_publisherAssertions API call is used to obtain the full set of
     * publisher assertions that is associated with an individual publisher. It
     * complements the get_registeredInfo API which returns information about
     * businesses, services, bindings, and tModels managed by a publisher.
     *
     * @param authInfo · authInfo: This optional argument is an element that
     * contains an authentication token. Authentication tokens are obtained
     * using the get_authToken API call or through some other means external to
     * this specification. Registries that serve multiple publishers and
     * registries that restrict who can publish in them typically require
     * authInfo for this call.
     * @return returns java.util.List<org.uddi.api_v3.PublisherAssertion> This
     * API call returns a publisherAssertions structure that contains a
     * publisherAssertion element for each publisher assertion registered by the
     * publisher. When the registry distinguishes between publishers, this
     * information is associated with the authentication information. Only
     * assertions made by the publisher are returned. Elements will be sorted by
     * last date change in ascending order. See get_assertionStatusReport and
     * Appendix A Relationships and Publisher Assertions for more details.
     *
     * The publisherAssertions structure has the form: <img
     * src="http://uddi.org/pubs/uddi-v3.0.2-20041019_files/image071.gif">
     * @throws DispositionReportFaultMessage, RemoteException None, other than
     * those common to all UDDI APIs. See Section 12.1 Common Error Codes.
     */
    @WebMethod(operationName = "get_publisherAssertions", action = "get_publisherAssertions")
    @WebResult(name = "publisherAssertion", targetNamespace = "urn:uddi-org:api_v3")
    @RequestWrapper(localName = "get_publisherAssertions", targetNamespace = "urn:uddi-org:api_v3", className = "org.uddi.api_v3.GetPublisherAssertions")
    @ResponseWrapper(localName = "publisherAssertionsResponse", targetNamespace = "urn:uddi-org:api_v3", className = "org.uddi.api_v3.PublisherAssertionsResponse")
    public List<PublisherAssertion> getPublisherAssertions(
            @WebParam(name = "authInfo", targetNamespace = "urn:uddi-org:api_v3") String authInfo)
            throws DispositionReportFaultMessage, RemoteException;

    /**
     * The get_registeredInfo API call is used to get an abbreviated list of all
     * businessEntity and tModel data that are controlled by a publisher. When
     * the registry distinguishes between publishers, this is the individual
     * associated with the credentials passed in the authInfo element. This
     * returned information is intended, for example, for driving tools that
     * display lists of registered information and then provide drill-down
     * features. This is the recommended API to use after a network problem
     * results in an unknown status of saved information.
     *
     * @param body authInfo: This optional argument is an element that contains
     * an authentication token. Authentication tokens are obtained using the
     * get_authToken API call or through some other means external to this
     * specification. Registries that serve multiple publishers and registries
     * that restrict who can publish in them typically require authInfo for this
     * call.
     *
     * · infoSelection: This required argument represents an enumerated choice
     * that determines which tModels are returned. "all" indicates all visible
     * and hidden tModels owned by the publisher are to be returned (this is the
     * default). "visible" indicates only visible tModels owned by the publisher
     * are to be returned. "hidden" indicates only hidden (logically deleted)
     * tModels owned by the publisher are to be returned.
     * @return returns org.uddi.api_v3.RegisteredInfo Upon successful
     * completion, a registeredInfo structure MUST be returned, listing
     * abbreviated business information in one or more businessInfo elements,
     * and tModel information in one or more tModelInfo elements. This API is
     * useful for determining the full extent of registered business and tModel
     * information owned by a single publisher in a single call. This structure
     * complements the get_publisherAssertions API call, which returns
     * information about assertions owned by an individual publisher.
     * businessInfos and/or tModelInfos will be sorted case-sensitively on the
     * primary name in ascending order, using the collation sequence determined
     * by node policy.
     * @throws DispositionReportFaultMessage, RemoteException
     */
    @WebMethod(operationName = "get_registeredInfo", action = "get_registeredInfo")
    @WebResult(name = "registeredInfo", targetNamespace = "urn:uddi-org:api_v3", partName = "body")
    @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
    public RegisteredInfo getRegisteredInfo(
            @WebParam(name = "get_registeredInfo", targetNamespace = "urn:uddi-org:api_v3", partName = "body") GetRegisteredInfo body)
            throws DispositionReportFaultMessage, RemoteException;

    /**
     * The save_binding API call is used to save or update a complete
     * bindingTemplate element. It can be used to add or update one or more
     * bindingTemplate elements as well as the container/contained relationship
     * that each bindingTemplate has with one or more existing businessService
     * elements. Each bindingTemplate MAY be signed and MAY have
     * publisher-assigned keys.
     *
     * @param body <p class="MsoBodyText"
     * style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><i>authInfo</i></b>: This optional argument is an
     * element that contains an authentication token.&nbsp; Authentication
     * tokens are obtained using the get_authToken API call or through some
     * other means external to this specification. Registries that serve
     * multiple publishers and registries that restrict who can publish in them
     * typically require authInfo for this call.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><i>bindingTemplate</i></b>: Required repeating element
     * containing one or more complete bindingTemplate structures. To save a new
     * bindingTemplate, a bindingTemplate element is passed with either an empty
     * bindingKey attribute value, or with a publisher-assigned bindingKey. See
     * Section <a href="#_Ref8978954 ">5.2.2.2</a> <i>Behavior of
     * Publishers</i>. </p> <p class="MsoBodyText"><span lang="EN-AU">Each new
     * bindingTemplate passed MUST contain a serviceKey value that corresponds
     * to a registered businessService controlled by the same publisher. An
     * existing binding template MAY contain a serviceKey value that corresponds
     * to a registered businessService controlled by the same
     * publisher</span>.&nbsp; The net effect of this call is to determine the
     * containing parent businessService for each bindingTemplate affected by
     * this call. If the same bindingTemplate (determined by matching bindingKey
     * value) is listed more than once, any relationship to the containing
     * businessService is determined by processing order, which is determined by
     * the position of the bindingTemplate data in first to last order.</p>
     *
     * <p class="MsoBodyText">If the bindingKey within a bindingTemplate element
     * is missing or is passed with an empty value, this is a signal that the
     * bindingTemplate is being inserted for the first time.&nbsp; When this
     * occurs, the node MUST automatically generate a new key for the
     * bindingTemplate that is without an associated key. New bindingTemplate
     * structures can also be added with publisher-assigned keys. See Section <a
     * href="#_Ref8978954 ">5.2.2.2</a> <i>Behavior of Publishers</i>.</p>
     *
     * <p class="MsoBodyText">Using this API call it is possible to move an
     * existing bindingTemplate from one businessService to another by simply
     * specifying a different parent businessService relationship along with the
     * complete bindingTemplate.&nbsp; Changing a parent relationship in this
     * way causes two businessService structures to be affected.&nbsp; The net
     * result of such a move is that the bindingTemplate still resides within
     * one, and only one businessService based on the value of the serviceKey
     * passed. An attempt to move a bindingTemplate in this manner by a party
     * who is not the publisher of the businessService that is specified by the
     * serviceKey MUST be rejected with an error E_userMismatch.</p>
     *
     * <p class="MsoBodyText">When a bindingTemplate is saved with a categoryBag
     * content that is associated with a checked value set or category group
     * system tModel, the references MUST be checked for validity prior to
     * completion of the save, or the node must return E_unsupported, indicating
     * it does not support the referenced checked value set or category group
     * system.&nbsp; See Section <a href="#_Ref8978999 ">5.2.3</a> <i>Special
     * considerations for validated value sets</i> and Appendix F <i>Using
     * Categorization</i> for additional details.</p>
     * @return returns org.uddi.api_v3.BindingDetail This API returns a
     * bindingDetail structure containing the results of the call that reflects
     * the newly registered information for the effected bindingTemplate
     * elements. If more than one bindingTemplate is saved in a single
     * save_binding call, the resulting bindingDetail MUST return results in the
     * same order that they appeared in the save_binding call. If the same
     * bindingTemplate (determined by matching bindingKey) is listed more than
     * once in the save_binding call, it MAY be listed once in the result for
     * each appearance in the save_binding call. If the same bindingTemplate
     * appears more than once in the response, the last occurrence of the
     * bindingTemplate in the results represents the state stored in the
     * registry. Any bindingKeys that were assigned as a result of processing
     * the save_binding call are included in the bindingTemplate data.
     *
     * The bindingDetail structure has the form: <img
     * src="http://uddi.org/pubs/uddi-v3.0.2-20041019_files/image075.gif">
     * @throws DispositionReportFaultMessage, RemoteException <p
     * class="MsoBodyText">If an error occurs in processing this API call, a
     * dispositionReport element MUST be returned to the caller in a SOAP
     * Fault.&nbsp; See Section <a href="#_Ref8978558 ">4.8</a> <i>Success and
     * Error Reporting.&nbsp; </i>In addition to the errors common to all APIs,
     * the following error information is relevant here:</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_accountLimitExceeded</b>: Signifies that user account
     * limits have been exceeded. </p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_invalidKeyPassed</b>: Signifies that the request
     * cannot be satisfied because one or more <i>uddiKey</i> values specified
     * are not valid key values for the entities being published. tModelKey,
     * serviceKey, or bindingKey values that either do not exist, or exist with
     * a different entity type, or are not authorized to be proposed by the
     * publisher are considered to be invalid values. The key causing the error
     * SHOULD be clearly indicated in the error text. This error code will also
     * be returned in the event that the serviceKey is not provided and the
     * bindingKey is either absent or has a value not registered in the
     * registry. In this case, the error text SHOULD clearly indicate the use of
     * an incomplete bindingTemplate.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_invalidValue</b>: A value that was passed in a
     * keyValue attribute did not pass validation.&nbsp; This applies to checked
     * value sets that are referenced using keyedReferences. The error text
     * SHOULD clearly indicate the key and value combination that failed
     * validation.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><span
     * style="layout-grid-mode:line">E_keyUnavailable</span></b><span
     * style="layout-grid-mode:line">: Indicates that the proposed key has
     * already been assigned to some other publisher or is not within the
     * partition defined by a key generator tModel that the publisher
     * owns.</span></p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_requestTimeout</b>: Signifies that the request could
     * not be carried out because a needed validate_values service did not
     * respond in a reasonable amount of time. Details identifying the failing
     * Web service SHOULD be included in the dispositionReport element.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_userMismatch</b>: Signifies that one or more of the
     * <i>uddiKey </i>values passed refers to data that is not owned by the
     * individual publisher who is represented by the authentication token.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_valueNotAllowed</b>: Restrictions have been placed by
     * the value set provider on the types of information that should be
     * included at that location within a specific value set. A validate_values
     * Web service chosen by the UDDI node has rejected this businessEntity for
     * at least one specified keyedReference.&nbsp; The error text SHOULD
     * clearly indicate the keyedReference that was not successfully
     * validated.</p>
     *
     * <span
     * style="font-size:10.0pt;font-family:Arial;letter-spacing:-.25pt"></span>
     */
    @WebMethod(operationName = "save_binding", action = "save_binding")
    @WebResult(name = "bindingDetail", targetNamespace = "urn:uddi-org:api_v3", partName = "body")
    @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
    public BindingDetail saveBinding(
            @WebParam(name = "save_binding", targetNamespace = "urn:uddi-org:api_v3", partName = "body") SaveBinding body)
            throws DispositionReportFaultMessage, RemoteException;

    /**
     * <p class="MsoBodyText">The save_business API call is used to save or
     * update information about a complete businessEntity structure.&nbsp; This
     * API has the broadest scope of all of the save_xx API calls, and can be
     * used to make sweeping changes to the published information for one or
     * more businessEntity elements controlled by an individual.</p>
     *
     * <p class="MsoBodyText">This API call can be used to establish a reference
     * relationship to businessService structures that are managed as the
     * contents of another businessEntity.&nbsp; In this way, a businessService
     * that is a natural part of one businessEntity can appear as a <i>projected
     * service</i> of another businessEntity.&nbsp; The content of a
     * businessService projected in this way (by way of a reference established
     * by this API) are not managed as a part of the referencing entity.</p>
     *
     * <p class="MsoBodyText">businessEntity structures MAY be signed and MAY
     * have publisher-assigned keys.</p>
     *
     * @param body <p class="MsoBodyText"
     * style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><i>authInfo</i></b>: This optional argument is an
     * element that contains an authentication token.&nbsp; Authentication
     * tokens are obtained using the get_authToken API call or through some
     * other means external to this specification. Registries that serve
     * multiple publishers and registries that restrict who can publish in them
     * typically require authInfo for this call.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><i>businessEntity</i></b>:&nbsp; Required repeating
     * element containing one or more businessEntity structures.&nbsp; These can
     * be obtained in advance by using the get_businessDetail API call or by any
     * other means.</p> <p class="MsoBodyText">If any of the <i>uddiKey</i>
     * values within a businessEntity element (e.g. any data with a key value
     * regulated by a businessKey, serviceKey or bindingKey) is missing or is
     * passed with an empty value, this is a signal that the data that is so
     * keyed is being inserted for the first time.<a href="#_ftn24"
     * name="_ftnref24" title=""><span class="MsoFootnoteReference"><span
     * class="MsoFootnoteReference"><span
     * style="font-size:10.0pt;letter-spacing:-.25pt">[24]</span></span></span></a>&nbsp;
     * When this occurs, the node MUST automatically generate a new key for the
     * data passed that is without an associated key. New entities can also be
     * added with publisher-assigned keys. See Section <a href="#_Ref8978954
     * ">5.2.2.2</a> <i>Behavior of Publishers</i>.</p>
     *
     * <p class="MsoBodyText">To make this API call perform an update to
     * existing registered data, the keyed entities (businessEntity,
     * businessService or bindingTemplate) MUST have <i>uddiKey</i> values that
     * correspond to the registered data to be updated.</p>
     *
     * <p class="MsoBodyText">Data can be deleted with this API call when
     * registered information is different from the new information provided.
     * Any businessService and bindingTemplate structures found in the custodial
     * UDDI node, but missing from the businessEntity information provided in
     * this call, are deleted from the registry by this call.</p>
     *
     * <p class="MsoBodyText">Data contained within businessEntity structures
     * can be rearranged with this API call. This can be done by redefining
     * parent container relationships for other registered information.&nbsp;
     * For instance, if a new businessEntity is saved with information about a
     * businessService that is registered already as part of a different
     * businessEntity, this results in the businessService being moved from its
     * current container to the new businessEntity.&nbsp;&nbsp; This condition
     * occurs when the businessKey of the businessService being saved matches
     * the businessKey of the businessEntity being saved. An attempt to delete
     * or move a businessService in this manner by a party who is not the
     * publisher of the businessService MUST be rejected with an error
     * E_userMismatch.</p>
     *
     * <p class="MsoBodyText">If the businessEntity being saved contains a
     * businessService that has a businessKey referring to some businessEntity
     * other than the businessEntity being saved, the UDDI registry notes a
     * reference, called a "service projection", to the existing
     * businessService. Subsequent calls to the get_businessDetail API, passing
     * either the businessKey of the businessEntity that contains the referenced
     * businessService or the businessKey of the businessEntity that contains
     * the service projection will result in an identical businessService
     * element being included&nbsp;as part of the&nbsp;result set. </p>
     *
     * <p class="MsoBodyText">A businessEntity must not contain a
     * businessService and a service projection to this businessService. As a
     * result, a businessService cannot be moved to a businessEntity that
     * already has a service projection to that businessService. Regardless of
     * the order of operation, a businessService and a service projection can
     * never appear under the same businessEntity. Implementations are required
     * to reject and return an E_fatalError during such a save_business
     * operation.</p>
     *
     * <p class="MsoBodyText">No changes to the referenced businessService are
     * effected by the act of establishing a service projection.&nbsp;&nbsp;
     * Existing service projections associated with the businessEntity being
     * saved that are not contained in the call to save_business are deleted
     * automatically.&nbsp; This reference deletion does not cause any changes
     * to the referenced businessService. If the referenced businessService is
     * deleted by any means, all references to it associated with other
     * businessEntity structures are left untouched. Such "broken" service
     * projections appear in their businessEntity as businessService elements
     * containing the businessKey and serviceKey attributes as their only
     * content. If the businessService is moved to another business, all
     * projections will be updated to reflect the new businessKey<a
     * href="#_ftn25" name="_ftnref25" title=""><span
     * class="MsoFootnoteReference"><span class="MsoFootnoteReference"><span
     * style="font-size:10.0pt;letter-spacing:-.25pt">[25]</span></span></span></a>.
     * For this reason, it is good practice to coordinate references to
     * businessService data published under another businessEntity with the
     * party who manages that data</p>
     *
     * <p class="MsoBodyText">When saving a businessEntity containing a service
     * projection, all of the content of the businessService provided in the
     * save_business, with the exception of the serviceKey and businessKey, is
     * ignored.&nbsp; The businessKey and serviceKey of the businessService
     * being referenced are used to determine if the businessService is for a
     * service projection or not.&nbsp; If the businessService identified by the
     * serviceKey is not part of the businessEntity identified by the
     * businessKey, the error E_invalidProjection will be returned.</p>
     *
     * <p class="MsoBodyText">When a businessEntity is saved with identifierBag
     * or categoryBag contents that is associated with a checked value set or
     * category group system tModel, the references MUST be checked for validity
     * prior to completion of the save or the node must return E_unsupported,
     * indicating it does not support the referenced checked value set or
     * category group system.&nbsp; See Section <a href="#_Ref8978999
     * ">5.2.3</a> <i>Special considerations for validated value sets,</i>
     * Appendix E <i>Using Identifiers</i> and Appendix F <i>Using
     * Categorization</i> for additional details.</p>
     * @return returns org.uddi.api_v3.BusinessDetail <p
     * class="MsoBodyText">This API returns a businessDetail structure
     * containing the final results of the call that reflects the new registered
     * information for the businessEntity information provided. Any businessKey,
     * serviceKey, or bindingKey attributes that were assigned as a result of
     * processing the save_business are included in the returned data. For
     * businessService elements that are service projections, the response
     * includes either the businessService elements as provided by the publisher
     * or the full contents of the real businessService elements. These results
     * include any businessService elements that are contained by reference. If
     * the same entity (businessEntity, businessService, or bindingTemplate),
     * determined by matching key, is listed more than once in the save_business
     * call, it MAY be listed once in the result for each appearance in the
     * call. If the same entity appears more than once in the response, the last
     * appearance occurrence of the entity in the results represents either the
     * final saved state stored in the registry or the last occurrence of the
     * entity provided by the publisher within the request.</p>
     *
     * <p class="MsoBodyText">The businessDetail has the form:</p> <img
     * src="http://uddi.org/pubs/uddi-v3.0.2-20041019_files/image077.gif">
     * @throws DispositionReportFaultMessage, RemoteException <p
     * class="MsoBodyText">If an error occurs in processing this API call, a
     * dispositionReport element MUST be returned to the caller in a SOAP
     * Fault.&nbsp; See Section <a href="#_Ref8979130 ">4.8</a> <i>Success and
     * Error Reporting.&nbsp; </i>In addition to the errors common to all APIs,
     * the following error information is relevant here:</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_accountLimitExceeded</b>: Signifies that user account
     * limits have been exceeded.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_invalidKeyPassed</b>: Signifies that the request
     * cannot be satisfied because one or more <i>uddiKey</i> values specified
     * are not valid key values for the entities being published. tModelKey,
     * businessKey, serviceKey, or bindingKey values that either do not exist,
     * or exist with a different entity type, or are not authorized to be
     * proposed by the publisher are considered to be invalid values. The key
     * causing the error SHOULD be clearly indicated in the error text.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_invalidProjection</b>: Signifies that an attempt was
     * made to save a businessEntity containing a service projection where the
     * businessService being projected is not a part of the businessEntity that
     * is identified by the businessKey in the businessService. The serviceKey
     * of at least one such businessService SHOULD be included in the
     * dispositionReport.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_userMismatch</b>: Signifies that one or more of the
     * <i>uddiKey </i>values passed refers to data that is not owned by the
     * individual publisher who is represented by the authentication
     * token.&nbsp; The key causing the error SHOULD be clearly indicated in the
     * error text.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_invalidValue</b>: A value that was passed in a
     * keyValue attribute did not pass validation.&nbsp; This applies to checked
     * value sets that are referenced using keyedReferences. The error text
     * SHOULD clearly indicate the key and value combination that failed
     * validation.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><span
     * style="layout-grid-mode:line">E_keyUnavailable</span></b><span
     * style="layout-grid-mode:line">: Indicates that the proposed key has
     * already been assigned to some other publisher or is not within the
     * partition defined by a key generator tModel that the publisher
     * owns.</span></p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_requestTimeout</b>: Signifies that the request could
     * not be carried out because a needed validate_values service did not
     * respond in a reasonable amount of time. Details identifying the failing
     * Web service SHOULD be included in the dispositionReport element.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><span
     * style="layout-grid-mode:line">E_unsupported</span></b><span
     * style="layout-grid-mode:line">: A keyedReference in a categoryBag or an
     * identifierBag that references a checked value set cannot be validated by
     * the UDDI node because the node does not support the referenced checked
     * value set.&nbsp; The error text should clearly indicate the
     * keyedReference that cannot be validated.</span></p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><span
     * style="layout-grid-mode:line">E_unvalidatable</span></b><span
     * style="layout-grid-mode:line">: A keyedReference in a categoryBag or an
     * identifierBag that references a checked value set cannot be validated by
     * the UDDI node because the referenced tModel has been marked
     * unvalidatable.&nbsp; The error text should clearly indicate the
     * keyedReference that cannot be validated.</span></p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_valueNotAllowed</b>: Restrictions have been placed by
     * the value set provider on the types of information that should be
     * included at that location within a specific value set. A validate_values
     * Web service chosen by the UDDI node has rejected this businessEntity for
     * at least one specified keyedReference.&nbsp; The error text SHOULD
     * clearly indicate the keyedReference that was not successfully
     * validated.</p>
     *
     * <span
     * style="font-size:10.0pt;font-family:Arial;letter-spacing:-.25pt"></span>
     */
    @WebMethod(operationName = "save_business", action = "save_business")
    @WebResult(name = "businessDetail", targetNamespace = "urn:uddi-org:api_v3", partName = "body")
    @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
    public BusinessDetail saveBusiness(
            @WebParam(name = "save_business", targetNamespace = "urn:uddi-org:api_v3", partName = "body") SaveBusiness body)
            throws DispositionReportFaultMessage, RemoteException;

    /**
     * The save_service API call adds or updates one or more businessService
     * elements. Each businessService MAY be signed and MAY have
     * publisher-assigned keys.
     *
     * @param body <p class="MsoBodyText"
     * style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><i>authInfo</i></b>: This optional argument is an
     * element that contains an authentication token.&nbsp; Authentication
     * tokens are obtained using the get_authToken API call or through some
     * other means external to this specification. Registries that serve
     * multiple publishers and registries that restrict who can publish in them
     * typically require authInfo for this call.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><i>businessService</i></b>:&nbsp; Required repeating
     * element containing one or more complete businessService elements.&nbsp;
     * For the purpose of performing round trip updates, this data can be
     * obtained in advance by using the get_serviceDetail API call or by any
     * other means.</p>
     *     
* <p class="MsoBodyText"><span lang="EN-AU">Each new businessService passed
     * MUST contain a businessKey value that corresponds to a registered
     * businessEntity controlled by the same publisher. An existing business
     * service MAY contain a businessKey value that corresponds to a registered
     * businessEntity controlled by the same publisher</span>.</p>
     *
     * <p class="MsoBodyText">If any of the <i>uddiKey</i> values within a
     * businessService element (i.e., any data with a key value regulated by a
     * serviceKey or bindingKey) is passed with an empty value, this is a signal
     * that the data that is so keyed is being inserted for the first time.<span
     * class="MsoFootnoteReference"> <a href="#_ftn26" name="_ftnref26"
     * title=""><span class="MsoFootnoteReference"><span
     * style="font-size:10.0pt;letter-spacing:-.25pt">[26]</span></span></a></span>
     * In this case, a new key value MUST be automatically generated for the
     * data which was passed without an associated key value. New entities can
     * also be added with publisher-assigned keys. See Section <a
     * href="#_Ref8978954 ">5.2.2.2</a> <i>Behavior of Publishers</i>.</p>
     *
     * <p class="MsoBodyText">If the same businessService is contained in more
     * than one businessService argument, the final relationship to the
     * containing businessEntity is determined by processing order – which is
     * determined by first to last order of the information passed in the
     * request. Analogously, if the same bindingTemplate is specified in the
     * call as being in more than one businessService, the businessService that
     * is its container at the conclusion of the call is last one listed.</p>
     *
     * <p class="MsoBodyText">Using this API call it is possible to move an
     * existing bindingTemplate element from one businessService element to
     * another, or move an existing businessService element from one
     * businessEntity to another by simply specifying a different parent
     * businessEntity relationship.&nbsp; Changing a parent relationship in this
     * way causes two businessEntity or two businessService structures to be
     * changed. An attempt to move a bindingTemplate or a businessService in
     * this manner by a party who is not the publisher of the businessService
     * that is specified by the serviceKey or the businessEntity that is
     * specified by the businessKey MUST be rejected with an error
     * E_userMismatch.</p>
     *
     * <p class="MsoBodyText">When a businessService is saved with categoryBag
     * contents that is associated with a checked value set or category group
     * system tModel, the references MUST be checked for validity prior to
     * completion of the save or the node MUST return E_unsupported, indicating
     * it does not support the referenced checked value set or category group
     * system.&nbsp; See Section <a href="#_Ref8978999 ">5.2.3</a> <i>Special
     * considerations for validated value sets</i> and Appendix F <i>Using
     * Categorization</i> for additional details.</p>
     * @return returns org.uddi.api_v3.ServiceDetail <p class="MsoBodyText">This
     * API call returns a serviceDetail containing the final results of the call
     * that reflects the newly registered information for the affected
     * businessService elements.&nbsp; In cases where multiple businessService
     * elements are passed in the request, the result contains the final results
     * for each businessService passed and these appear in the same order as
     * found in the request. Any serviceKey and bindingKey values that were
     * assigned as a result of processing the save_service API are included in
     * the businessService data.</p>
     *
     * <p class="MsoBodyText">If the same entity (businessService, or
     * bindingTemplate), determined by matching key, is listed more than once in
     * the save_service API, it MAY be listed once in the result for each
     * appearance in the save_service API. If the same entity appears more than
     * once in the response, the last occurrence of the entity in the results
     * represents the state stored in the registry. </p>
     *
     * <p class="MsoBodyText">The serviceDetail has the form: </p> <img
     * src="http://uddi.org/pubs/uddi-v3.0.2-20041019_files/image079.gif">
     * @throws DispositionReportFaultMessage, RemoteException <p
     * class="MsoBodyText">If an error occurs in processing this API call, a
     * dispositionReport element MUST be returned to the caller within a SOAP
     * Fault.&nbsp; See Section <a href="#_Ref8979130 ">4.8</a> <i>Success and
     * Error Reporting.&nbsp; </i>In addition to the errors common to all APIs,
     * the following error information is relevant here:</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_accountLimitExceeded</b>: Signifies that user account
     * limits have been exceeded.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_invalidKeyPassed</b>: Signifies that the request
     * cannot be satisfied because one or more <i>uddiKey</i> values specified
     * are not valid key values for the entities being published. tModelKey,
     * businessKey, serviceKey, or bindingKey values that either do not exist,
     * or exist with a different entity type, or are not authorized to be
     * proposed by the publisher are considered to be invalid values. The key
     * causing the error SHOULD be clearly indicated in the error text. This
     * error code will also be returned in the event that the businessKey is not
     * provided and the serviceKey is either absent or has a value not
     * registered in the registry.&nbsp; In this case, the error text SHOULD
     * clearly indicate the use of an incomplete businessService.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_invalidValue</b>: A value that was passed in a
     * keyValue attribute did not pass validation.&nbsp; This applies to checked
     * value sets referenced using keyedReferences. The error text SHOULD
     * clearly indicate the key and value combination that failed
     * validation.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><span
     * style="layout-grid-mode:line">E_keyUnavailable</span></b><span
     * style="layout-grid-mode:line">: Indicates that the proposed key has
     * already been assigned to some other publisher or is not within the
     * partition defined by a key generator tModel that the publisher
     * owns.</span></p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_requestTimeout</b>: Signifies that the request could
     * not be carried out because a needed validate_values service did not
     * respond in a reasonable amount of time. Details identifying the failing
     * Web service SHOULD be included in the dispositionReport element.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_userMismatch</b>: Signifies that one or more of the
     * <i>uddiKey </i>values passed refers to data that is not owned by the
     * individual publisher who is represented by the authentication token.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><span
     * style="layout-grid-mode:line">E_unsupported</span></b><span
     * style="layout-grid-mode:line">: A keyedReference in a categoryBag that
     * references a checked value set cannot be validated by the UDDI node
     * because the node does not support the referenced checked value set.&nbsp;
     * The error text SHOULD clearly indicate the keyedReference that cannot be
     * validated.</span></p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><span
     * style="layout-grid-mode:line">E_unvalidatable</span></b><span
     * style="layout-grid-mode:line">: A keyedReference in a categoryBag that
     * references a checked value set cannot be validated by the UDDI node
     * because the referenced tModel has been marked unvalidatable.&nbsp; The
     * error text SHOULD clearly indicate the keyedReference that cannot be
     * validated.</span></p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_valueNotAllowed</b>: The value set validation routine
     * chosen by the UDDI node has rejected the businessService data
     * provided.&nbsp; The error text SHOULD clearly indicate the keyedReference
     * that was not successfully validated.</p>
     *
     * <span
     * style="font-size:10.0pt;font-family:Arial;letter-spacing:-.25pt"></span>
     */
    @WebMethod(operationName = "save_service", action = "save_service")
    @WebResult(name = "serviceDetail", targetNamespace = "urn:uddi-org:api_v3", partName = "body")
    @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
    public ServiceDetail saveService(
            @WebParam(name = "save_service", targetNamespace = "urn:uddi-org:api_v3", partName = "body") SaveService body)
            throws DispositionReportFaultMessage, RemoteException;

    /**
     * The save_tModel API call adds or updates one or more registered tModel
     * elements. tModels MAY be signed and tModels MAY be saved with
     * publisher-assigned keys, including those tModels that establish the
     * domain partition of publisher-assigned keys, known as domain key
     * generator tModels.
     *
     * @param body <p class="MsoBodyText"
     * style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><i>authInfo</i></b>: This optional argument is an
     * element that contains an authentication token.&nbsp; Authentication
     * tokens are obtained using the get_authToken API call or through some
     * other means external to this specification. Registries that serve
     * multiple publishers and registries that restrict who can publish in them
     * typically require authInfo for this call.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b><i>tModel</i></b>:&nbsp; Required repeating element
     * containing one or more required repeating complete tModel elements.&nbsp;
     * For the purpose of performing round-trip updates, this data can be
     * obtained in advance by using the get_tModel API call or by other
     * means.</p> <p class="MsoBodyText">If the <i>uddiKey</i> value within a
     * tModel (i.e., tModelKey) is missing or is passed with an empty value,
     * this is a signal that a new tModel is being inserted and that the UDDI
     * registry MUST assign a new tModelKey identifier to this data.&nbsp; If
     * the new tModel is categorized with the <i>keyGenerator</i> value from the
     * uddi:uddi.org:categorization:types category system, any publisher
     * assigned key MUST end with the string "<i>:keygenerator" , </i>making the
     * tModel a key generator tModel.&nbsp; If the new tModel is categorized
     * with the <i>keyGenerator</i> value from the
     * uddi:uddi.org:categorization:types category, an empty uddiKey signifies
     * that the tModelKey generated by the node will end with the string
     * "<i>:keygenerator"</i>, making the tModel a key generator tModel.
     * &nbsp;New tModels can also be added with publisher-assigned keys. See
     * Section <a href="#_Ref8978954 ">5.2.2.2</a> <i>Behavior of Publishers</i>
     * and Section <a href="#_Ref535395714 ">5.2.18.3.1</a> <i>Domain Key
     * Generator tModels</i>.&nbsp; </p>
     *
     * <p class="MsoBodyText">This API call performs an update to existing
     * registered data when the tModelKey values have <i>uddiKey</i> values that
     * correspond to already registered data.</p>
     *
     * <p class="MsoBodyText">If a tModelKey value is passed that corresponds to
     * a tModel that was previously hidden via the delete_tModel API call, the
     * save_tModel service restores the tModel to full visibility, making it
     * available for return in find_tModel results. </p>
     *
     * <p class="MsoBodyText">The value of the deleted attribute in the tModel
     * is set to false in all saves.</p>
     *
     * <p class="MsoBodyText">Multiple representations of the overview document
     * MAY be registered for a tModel allowing, for example, both technical and
     * human readable representations of the technical overview to be provided.
     * </p>
     *
     * <p class="MsoBodyText">When a tModel is saved with keyedReferences, all
     * tModelKeys used in keyedReferences must refer to tModels that existed
     * prior to processing the tModel containing the references. A save_tModel
     * API call may contain a sequence of tModels, in which case a
     * keyedReference in a tModel may refer to tModelKeys created earlier but
     * not later in the sequence. A tModel being created must not refer to
     * itself. Self-referencing tModels can be created by using two subsequent
     * save_tModel API calls, the first one without the reference, and the
     * second one with the reference (to the already saved tModel). If these
     * conditions are not met, the node MUST return E_invalidKeyPassed.</p>
     *
     * <p class="MsoBodyText">When a tModel is saved with identifierBag or
     * categoryBag contents that is associated with a checked value set or
     * category group system tModel, the references MUST be checked for validity
     * prior to completion of the save, or the node MUST return E_unsupported,
     * indicating it does not support the referenced checked value set or
     * category group system.&nbsp; See Section <a href="#_Ref8978999
     * ">5.2.3</a> <i>Special considerations for validated value sets,</i>
     * Appendix E <i>Using Identifiers</i> and Appendix F <i>Using
     * Categorization</i> for additional details. </p> <h5
     * style="margin-left:0in;text-indent:0in"><a name="_Ref535395714">Domain
     * key generator tModels</a></h5>
     *
     * <p class="MsoBodyText">For registries that use the recommended key
     * syntax, a domain key generator tModel establishes a key partition from
     * which <i>uddiKey</i>s can be derived and used in other entities
     * controlled by the publisher, as described in Section <a
     * href="#_Ref44771019 ">4.4.1</a> <a href="#_Ref44771019 ">Key
     * Syntax</a>.&nbsp; Additional considerations are involved when publishing
     * a domain key generator tModel for the first time.&nbsp; </p>
     *
     * <p class="MsoNormal" style="margin-left:1.0in;text-indent:-.25in">1.<span
     * style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>The tModelKey
     * MUST be in the form of a <span class="CharChar1"><i>domain_key</i></span>
     * and MUST end with the term<span class="CharChar1">:</span><span
     * class="CharChar1"> <i>keyGenerator</i></span>. </p>
     *
     * <p class="MsoNormal" style="margin-left:1.0in;text-indent:-.25in">2.<span
     * style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>The tModelKey
     * MUST be categorized with the <i>keyGenerator</i> value from the
     * uddi:uddi.org:categorization:types category system.</p>
     *
     * <p class="MsoNormal" style="margin-left:1.0in;text-indent:-.25in">3.<span
     * style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Registry policy
     * for establishing key domains MAY require the tModel to be signed.</p>
     *
     * <p class="MsoBodyText">Also, publishers of key generator tModels MAY use
     * the overviewDoc to describe how the key space is defined.</p>
     *
     * <p class="MsoBodyText">The save_tModel API call does a first pass check
     * of the tModel to check its suitability and, if it is acceptable according
     * to the policy of the registry for saving domain key generator tModels,
     * returns the tModelDetail for the registry. If it is not acceptable the
     * reason is clearly indicated in the returned dispositionReport and no
     * further processing takes place.</p>
     *
     * <p class="MsoBodyText">If the registry has multiple nodes, returning the
     * tModelDetail is not an indication that the domain key generator tModel
     * has been published successfully. A registry that allows publisher
     * assigned keys MUST have a policy to ensure domainKey collisions do not
     * occur.&nbsp; The custodial node MUST ensure that the domain key generator
     * tModel is not in the process of being published simultaneously on some
     * other node. If, after the conclusion of a full replication cycle, no UDDI
     * node has already assigned or attempted to assign the partition (e.g., no
     * change record has been received from other nodes), the custodial node
     * completes the publish operation of the domain key generator tModel,
     * assigning it to the publisher. If some other node has already been
     * assigned the partition, the tModel is not published.&nbsp; See Section
     * 7.3.9 changeRecordNewDataConditional for more information on the
     * replication structure, and Section 9.4.2 General Keying Policy and
     * Section 9.4.3 Policy Abstractions for the UDDI keying scheme for the
     * recommended policy that addresses acceptance of a domain key
     * generator.</p>
     *
     * <p class="MsoBodyText">When the publishing of a domain key generator
     * tModel has completed, the custodial node MAY notify the publisher that
     * the tModel is ready for use. Whether a node does this and the means by
     * which it does so is a node policy. A typical node policy is to notify the
     * publisher by e-mail using an e-mail address gathered at the time the
     * publisher account was set up.</p>
     *
     * <p class="MsoBodyText">Before the publish operation is complete, the
     * domain key generator tModel will be ignored by find_xx and get_xx API
     * calls, and will return an E_keyUnavailable error to further save_tModel
     * calls.</p>
     *
     * <p class="MsoBodyText">If after the replication cycle the publisher is in
     * doubt about the outcome, get_tModelDetail may be issued specifying the
     * key of the domain key generator tModel being published. If a tModel is
     * retrieved and the publisher is the owner, the operation succeeded. If a
     * tModel is retrieved and some other publisher is the owner, the operation
     * failed because another publisher published a domain key generator with
     * the chosen <i><span style="layout-grid-mode:line">domain_key</span></i>
     * first. If no tModel is retrieved, then either the registry experienced a
     * failure, or two publishers tried to publish tModels with the same key
     * "simultaneously", and neither succeeded. In either of these cases, the
     * save_tModel operation may be retried.</p>
     *
     * <p class="MsoBodyText">Attempts to remove the following categorization
     * from a successfully published key generator tModel will fail with
     * E_fatalError, since it is this very categorization that distinguishes key
     * generator tModels from other tModels:</p>
     *
     * <p class="codeSample">&lt;tModelKey="uddi:uddi.org:categorization:types"
     * keyValue="keyGenerator" /&gt;</p>
     * @return returns org.uddi.api_v3.TModelDetail <p class="MsoBodyText">In
     * most cases this API returns a tModelDetail containing the final results
     * of the call that reflects the new or pending registered information for
     * the affected tModel structures. Any tModelKey attributes that were
     * assigned as a result of processing the save_tModel API are included in
     * the tModel data.&nbsp; When a domain key generator is saved for the first
     * time, the tModel that is returned in the tModelDetail represents an
     * interim state, until all nodes in the registry have ascertained that the
     * requested key domain does in fact belong to the publisher<a
     * href="#_ftn27" name="_ftnref27" title=""><span
     * class="MsoFootnoteReference"><span class="MsoFootnoteReference"><span
     * style="font-size:10.0pt;letter-spacing:-.25pt">[27]</span></span></span></a>.&nbsp;
     * See Section <a href="#_Ref8979261 ">7.3.9</a>
     * <i>changeRecordNewDataConditional</i> for more information.&nbsp; If
     * multiple tModel elements are passed in the save_tModel request, the order
     * of the response MUST exactly match the order that the elements appeared
     * in the save. If the same tModel, determined by matching key, is listed
     * more than once in the save_tModel API, it MAY be listed only once in the
     * result for each appearance in the save_tModel API. If the same tModel
     * appears more than once in the response, the last occurrence of the tModel
     * in the results represents the state stored in the registry.</p>
     *
     * <p class="MsoBodyText">The tModelDetail has the form: </p> <img
     * src="http://uddi.org/pubs/uddi-v3.0.2-20041019_files/image081.gif">
     * @throws DispositionReportFaultMessage, RemoteException <p
     * class="MsoBodyText">If an error occurs in processing this API call, a
     * dispositionReport element MUST be returned to the caller in a SOAP
     * Fault.&nbsp; See Section <a href="#_Ref8979130 ">4.8</a> <i>Success and
     * Error Reporting.&nbsp; </i>In addition to the errors common to all APIs,
     * the following error information is relevant here:</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_accountLimitExceeded</b>: Signifies that user account
     * limits have been exceeded.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_invalidKeyPassed</b>: Signifies that the request
     * cannot be satisfied because one or more <i>uddiKey</i> values specified
     * are not valid key values for the entities being published. tModelKey
     * values that either do not exist, or exist with a different entity type,
     * or are not authorized to be proposed by the publisher are considered to
     * be invalid values. The key causing the error SHOULD be clearly indicated
     * in the error text.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_invalidValue</b>: A value that was passed in a
     * keyValue attribute did not pass validation.&nbsp; This applies to checked
     * value sets referenced using keyedReferences. The error text SHOULD
     * clearly indicate the key and value combination that failed
     * validation.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_keyUnavailable</b>: Indicates that the proposed key
     * has already been assigned to some other publisher, is not within the
     * partition defined by a key generator tModel that the publisher owns, or,
     * in the case of a domain key generator tModel being saved for the first
     * time, is assigned to some other publisher or is still pending its first
     * save.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_requestTimeout</b>: Signifies that the request could
     * not be carried out because a needed validate_values Web service did not
     * respond in a reasonable amount of time. Details identifying the failing
     * Web service SHOULD be included in the dispositionReport element.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_unacceptableSignature</b>: Indicates that the digital
     * signature in the tModel is missing or does not meet the requirements of
     * the registry. The errInfo element provides additional details.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_userMismatch</b>: Signifies that one or more of the
     * uddiKey values passed refers to data that is not owned by the individual
     * publisher who is represented by the authentication token.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_unsupported</b>: A keyedReference in a categoryBag or
     * an identifierBag that references a checked value set cannot be validated
     * by the UDDI node because the node does not support the referenced checked
     * value set.&nbsp; The error text SHOULD clearly indicate the
     * keyedReference that cannot be validated.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_unvalidatable</b>: A keyedReference in a categoryBag
     * or an identifierBag that references a checked value set cannot be
     * validated by the UDDI node because the referenced tModel has been marked
     * unvalidatable.&nbsp; The error text SHOULD clearly indicate the
     * keyedReference that cannot be validated.</p>
     *
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span
     * style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New
     * Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     * </span></span><b>E_valueNotAllowed</b>: Restrictions have been placed by
     * the value set provider on the types of information that should be
     * included at that location within a specific value set.&nbsp; The
     * validation routine chosen by the UDDI node has rejected this tModel for
     * at least one specified keyedReference.&nbsp; The error text SHOULD
     * clearly indicate the keyedReference that was not successfully
     * validated.</p>
     *
     * <span
     * style="font-size:10.0pt;font-family:Arial;letter-spacing:-.25pt"></span>
     */
    @WebMethod(operationName = "save_tModel", action = "save_tModel")
    @WebResult(name = "tModelDetail", targetNamespace = "urn:uddi-org:api_v3", partName = "body")
    @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
    public TModelDetail saveTModel(
            @WebParam(name = "save_tModel", targetNamespace = "urn:uddi-org:api_v3", partName = "body") SaveTModel body)
            throws DispositionReportFaultMessage, RemoteException;

    /**
     * The set_publisherAssertions API call is used to manage all of the tracked
     * relationship assertions associated with an individual publisher. See
     * Appendix A Relationships and Publisher Assertions for more information.
     *
     * @param publisherAssertion
     * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><b><i>authInfo</i></b>: This optional argument is an element that
contains an authentication token.&nbsp; Authentication tokens are obtained using the
get_authToken API call or through some other means external to this
specification. Registries that serve multiple publishers and registries that
restrict who can publish in them typically require authInfo for this call.</p>

     * @param authInfo
     * 
<p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><b><i>publisherAssertion</i></b>: Optional repeating element asserting
a relationship.&nbsp; Relationship assertions consist of a reference to two
businessEntity key values as designated by the fromKey and toKey elements, as
well as a REQUIRED expression of the directional relationship within the
contained keyedReference element.&nbsp; See Appendix A <i>Relationships and
Publisher Assertions</i>. The fromKey, the toKey, and all three parts of the
keyedReference – the tModelKey, the keyName, and the keyValue – MUST be
specified. E_fatalError is returned if any of these elements are missing in any
of the publisherAssertion elements.&nbsp; Empty (zero length) keyNames and keyValues
are permitted.</p>
* <p class="MsoBodyText">The full set of assertions associated with a publisher is
effectively replaced whenever this API is used.&nbsp; When this API call is processed, the publisher assertions that exist prior to this API call for a given
publisher are examined by the UDDI registry.&nbsp; Any new assertions not present
prior to the call are added to the assertions attributed to the publisher. Any
existing assertions not present in the call are deleted.&nbsp;&nbsp; As a result, new
relationships may be completed (e.g. determined to have a completed status),
and existing relationships may be dissolved.&nbsp; Invoking this API with no publisherAssertion elements deletes all assertions associated with the publisher.</p>

<p class="MsoBodyText">Any relationships attributed to assertions previously
present but not present in the data provided in this call are deactivated and
are no longer visible via the find_relatedBusinesses API.&nbsp; For the sake of
determining uniqueness within an assertion set, the fromKey, toKey, and the
entire keyedReference within the publisherAssertion element are significant.&nbsp;
Any differences in any of the individual publisherAssertion element contents
constitute a new unique assertion for purposes of detecting new assertions.&nbsp;
The direction of the relationship, as indicated by the two businessKey values
in the fromKey and toKey elements, is also relevant in determining assertion
uniqueness.</p>

<p class="MsoBodyText">The publisher must own the businessEntity referenced in the
fromKey, the toKey, or both.&nbsp; If both of the businessKey values passed within
an assertion are owned by the publisher, then the assertion is automatically
complete and the relationship described in the assertion is visible via the
find_relatedBusinesses API.&nbsp; To form a relationship when the publisher only owns
one of the two keys passed, the assertion MUST be matched exactly by an
assertion made by the publisher who owns the other business referenced.
Assertions exactly match if and only if they: </p>

<p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in">1.<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>refer
to the same businessEntity in their fromKeys; </p>

<p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in">2.<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>refer
to the same businessEntity in their toKeys; </p>

<p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in">3.<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>refer
to the same tModel in their tModelKeys; </p>

<p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in">4.<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>have
identical keyNames; and </p>

<p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in">5.<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>have
identical keyValues.</p>

<p class="MsoBodyText">When a publisherAssertion that is being saved references a
checked relationship system using the tModelKey in the contained
keyedReference, the reference MUST be checked for validity prior to completion
of the save, or the node must return E_unsupported, indicating it does not
support the referenced checked relationship system.&nbsp; Validation of a
relationship system reference entails verification that the reference is valid
according to the validation algorithm defined for the relationship system and
described by its tModel.&nbsp; For cached checked relationship system, the
validation algorithm verifies that referenced keyedReferences are valid for the
relationship system.</p>

<p class="MsoBodyText">For registries supporting the subscription APIs at any
node, it is necessary to track a modified date for publisherAssertion elements
so that nodes have the necessary information for responding to subscription
requests involving find_relatedBusinesses and get_assertionStatusReport
filters.</p>
<Br>
* <p class="MsoBodyText">Upon successful completion, a publisherAssertions
structure is returned containing all of the relationship assertions currently
attributed to the publisher.&nbsp; When registries distinguish between publishers,
the structure contains assertion data that is associated with the authInfo
passed.</p>

<p class="MsoBodyText">See Section <a href="#_Ref534775361 ">5.2.13.3</a> <i>get_publisherAssertions</i>
for more information on the publisherAssertions structure and contents.</p>

<p class="MsoBodyText">This API returns all assertions made by the publisher who
was authenticated in the set_publisherAssertions API.</p>
     * @throws DispositionReportFaultMessage, RemoteException
     * <p class="MsoBodyText">If an error occurs in processing this API call, a dispositionReport element MUST be returned to the caller in a SOAP Fault.&nbsp; See
Section <a href="#_Ref8979130 ">4.8</a> <i>Success and Error Reporting.&nbsp; </i>In
addition to the errors common to all APIs, the following error information is
relevant here:</p>

<p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><b>E_invalidKeyPassed</b>: Signifies that one of the <i>uddiKey</i>
values passed did not match with any known businessKey or tModelKey values.&nbsp;
The assertion element and the key that caused the problem SHOULD be clearly
indicated in the error text.</p>

<p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><b>E_userMismatch</b>: Signifies that neither of the businessKey
values passed in the embedded fromKey and toKey elements is controlled by the
publisher associated with the authentication token.&nbsp; The error text SHOULD
clearly indicate which assertion caused the error.</p>

<span style="font-size:10.0pt;font-family:Arial;letter-spacing:-.25pt"></span>
     */
    @WebMethod(operationName = "set_publisherAssertions", action = "set_publisherAssertions")
    @RequestWrapper(localName = "set_publisherAssertions", targetNamespace = "urn:uddi-org:api_v3", className = "org.uddi.api_v3.SetPublisherAssertions")
    @ResponseWrapper(localName = "publisherAssertions", targetNamespace = "urn:uddi-org:api_v3", className = "org.uddi.api_v3.PublisherAssertions")
    public void setPublisherAssertions(
            @WebParam(name = "authInfo", targetNamespace = "urn:uddi-org:api_v3") String authInfo,
            @WebParam(name = "publisherAssertion", targetNamespace = "urn:uddi-org:api_v3", mode = WebParam.Mode.INOUT) Holder<List<PublisherAssertion>> publisherAssertion)
            throws DispositionReportFaultMessage, RemoteException;
}
